mirror of
				https://github.com/Bryanthelol/namekoplus
				synced 2025-10-29 06:56:03 +08:00 
			
		
		
		
	Compare commits
	
		
			17 Commits
		
	
	
		
			v0.4.10
			...
			4cb47e6d3b
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 4cb47e6d3b | |||
| 548817ea1b | |||
| 0b893851ff | |||
| 62e6b1c1ed | |||
| 58804bbe50 | |||
| 1818308508 | |||
| 7866e6cbbf | |||
| a34e1c7d0b | |||
| b6659976fb | |||
| 6c059ac19d | |||
| 3641e7a1fa | |||
| ac50af774d | |||
| 96d33944a4 | |||
| 0fd6949262 | |||
| a8d088f6a3 | |||
| 0a2a382a35 | |||
| e19884b1c0 | 
							
								
								
									
										11
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								README.md
									
									
									
									
									
								
							| @@ -4,6 +4,13 @@ | ||||
|  | ||||
| A lightweight Python distributed microservice solution | ||||
|  | ||||
| ## Installation | ||||
|  | ||||
| ```shell | ||||
| python3 -m pip install namekoplus | ||||
| ``` | ||||
|  | ||||
|  | ||||
| ## CLI Usage | ||||
|  | ||||
| ### Checkout Command | ||||
| @@ -29,5 +36,5 @@ namekoplus init --directory <dir_name> --type <template_type> | ||||
|  | ||||
| See Documents:  | ||||
|  | ||||
| - [English](https://murl.vip/TwML) | ||||
| - [中文](https://murl.vip/B0O9) | ||||
| - [English](https://legendary-sopapillas-e2626d.netlify.app/) | ||||
| - [中文](https://doc.bearcatlog.com/) | ||||
| @@ -28,15 +28,14 @@ | ||||
|   "links": [], | ||||
|   "liveNow": false, | ||||
|   "panels": [ | ||||
|     % for grafana_dict in grafana_list: | ||||
| % for grafana_dict in grafana_list: | ||||
|     { | ||||
|       "aliasColors": {}, | ||||
|       "bars": false, | ||||
|       "dashLength": 10, | ||||
|       "dashes": false, | ||||
|       "datasource": { | ||||
|         "type": "statsd", | ||||
|         "uid": "5qrwjFCnk" | ||||
|         "type": "statsd" | ||||
|       }, | ||||
|       "fill": 1, | ||||
|       "fillGradient": 0, | ||||
| @@ -47,7 +46,7 @@ | ||||
|         "y": 0 | ||||
|       }, | ||||
|       "hiddenSeries": false, | ||||
|       "id": 5, | ||||
|       "id": ${loop.index}, | ||||
|       "legend": { | ||||
|         "alignAsTable": true, | ||||
|         "avg": true, | ||||
| @@ -92,7 +91,7 @@ | ||||
|       "title": "${service_name} | ${grafana_dict['stat_name']}", | ||||
|       "tooltip": { | ||||
|         "shared": true, | ||||
|         "sort": 0, | ||||
|         "sort": ${loop.index}, | ||||
|         "value_type": "individual" | ||||
|       }, | ||||
|       "type": "graph", | ||||
| @@ -116,8 +115,13 @@ | ||||
|       "yaxis": { | ||||
|         "align": false | ||||
|       } | ||||
|  | ||||
|   % if grafana_dict['is_last'] == 1: | ||||
|     } | ||||
|     % endfor | ||||
|   % else: | ||||
|     }, | ||||
|   % endif | ||||
| % endfor | ||||
|   ], | ||||
|   "refresh": "3s", | ||||
|   "schemaVersion": 36, | ||||
|   | ||||
| @@ -109,7 +109,7 @@ def start_statsd_agent(): | ||||
|  | ||||
| def start_statsd_exporter(): | ||||
|     with status(f'Starting statsd exporter'): | ||||
|         statsd_mapping_file_path = os.path.join('.', 'statsd_mapping.yml') | ||||
|         statsd_mapping_file_path = os.getcwd() + '/statsd_mapping.yml' | ||||
|         returned_string = docker.run(image='prom/statsd-exporter:latest', name='statsd-exporter', pull='missing', | ||||
|                                      detach=True, restart='always', tty=True, hostname='statsd-exporter', | ||||
|                                      publish=[(9125, 9125, 'udp'), (9102, 9102)], interactive=True, | ||||
| @@ -136,7 +136,7 @@ def start_grafana(): | ||||
|         grafana_conf_dir = os.path.join(get_directory('chassis-agent'), 'metric-configs') | ||||
|         grafana_provisioning_path = os.path.join(grafana_conf_dir, 'grafana_conf/provisioning') | ||||
|         grafana_config_path = os.path.join(grafana_conf_dir, 'grafana_conf/config/grafana.ini') | ||||
|         grafana_dashboard_path = os.path.join('.', 'grafana_dashboards') | ||||
|         grafana_dashboard_path = os.path.join(os.getcwd(), 'grafana_dashboards') | ||||
|         returned_string = docker.run(image='grafana/grafana:latest', name='grafana', hostname='grafana', | ||||
|                                      detach=True, restart='always', tty=True, interactive=True, | ||||
|                                      publish=[(3100, 3000)], pull='missing', | ||||
| @@ -367,6 +367,11 @@ def metric_config_gen(module, class_name_str): | ||||
|             for config in config_list: | ||||
|                 if config['class_name'] == class_name: | ||||
|                     grafana_list.append(config) | ||||
|             for idx, grafana_dict in enumerate(grafana_list): | ||||
|                 if idx + 1 == len(grafana_list): | ||||
|                     grafana_dict['is_last'] = 1 | ||||
|                 else: | ||||
|                     grafana_dict['is_last'] = 0 | ||||
|             grafana_configs_dir = os.path.join(get_directory('chassis-agent'), 'metric-configs') | ||||
|             grafana_file_path = os.path.join(grafana_configs_dir, 'grafana.json.mako') | ||||
|             output_file = os.path.join('grafana_dashboards', f'{class_name}_Grafana.json') | ||||
|   | ||||
| @@ -2,7 +2,8 @@ AMQP_URI: pyamqp://${RABBIT_USER:admin}:${RABBIT_PASSWORD:admin}@${RABBIT_HOST:l | ||||
| WEB_SERVER_ADDRESS: '0.0.0.0:8000' | ||||
| RPC_EXCHANGE: 'nameko-rpc' | ||||
|  | ||||
| max_workers: 10 | ||||
| max_workers: 20 | ||||
| PREFETCH_COUNT: 20 | ||||
| parent_calls_tracked: 20 | ||||
|  | ||||
| LOGGING: | ||||
|   | ||||
| @@ -1,5 +1,6 @@ | ||||
| AMQP_URI: pyamqp://${RABBIT_USER:admin}:${RABBIT_PASSWORD:admin}@${RABBIT_HOST:localhost}:${RABBIT_PORT:5672}/ | ||||
| RPC_EXCHANGE: 'nameko-rpc' | ||||
|  | ||||
| max_workers: 10 | ||||
| max_workers: 20 | ||||
| PREFETCH_COUNT: 20 | ||||
| parent_calls_tracked: 20 | ||||
|   | ||||
| @@ -1,7 +1,8 @@ | ||||
| AMQP_URI: pyamqp://${RABBIT_USER:admin}:${RABBIT_PASSWORD:admin}@${RABBIT_HOST:localhost}:${RABBIT_PORT:5672}/ | ||||
| RPC_EXCHANGE: 'nameko-rpc' | ||||
|  | ||||
| max_workers: 10 | ||||
| max_workers: 20 | ||||
| PREFETCH_COUNT: 20 | ||||
| parent_calls_tracked: 20 | ||||
|  | ||||
| LOGGING: | ||||
|   | ||||
| @@ -2,7 +2,8 @@ AMQP_URI: pyamqp://${RABBIT_USER:admin}:${RABBIT_PASSWORD:admin}@${RABBIT_HOST:l | ||||
| WEB_SERVER_ADDRESS: '0.0.0.0:8000' | ||||
| RPC_EXCHANGE: 'nameko-rpc' | ||||
|  | ||||
| max_workers: 10 | ||||
| max_workers: 20 | ||||
| PREFETCH_COUNT: 20 | ||||
| parent_calls_tracked: 20 | ||||
|  | ||||
| LOGGING: | ||||
|   | ||||
| @@ -1,7 +1,8 @@ | ||||
| AMQP_URI: pyamqp://${RABBIT_USER:admin}:${RABBIT_PASSWORD:admin}@${RABBIT_HOST:localhost}:${RABBIT_PORT:5672}/ | ||||
| RPC_EXCHANGE: 'nameko-rpc' | ||||
|  | ||||
| max_workers: 10 | ||||
| max_workers: 20 | ||||
| PREFETCH_COUNT: 20 | ||||
| parent_calls_tracked: 20 | ||||
|  | ||||
| LOGGING: | ||||
|   | ||||
| @@ -1,7 +1,8 @@ | ||||
| AMQP_URI: pyamqp://${RABBIT_USER:admin}:${RABBIT_PASSWORD:admin}@${RABBIT_HOST:localhost}:${RABBIT_PORT:5672}/ | ||||
| RPC_EXCHANGE: 'nameko-rpc' | ||||
|  | ||||
| max_workers: 10 | ||||
| max_workers: 20 | ||||
| PREFETCH_COUNT: 20 | ||||
| parent_calls_tracked: 20 | ||||
|  | ||||
| LOGGING: | ||||
|   | ||||
							
								
								
									
										17
									
								
								setup.py
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								setup.py
									
									
									
									
									
								
							| @@ -9,13 +9,12 @@ with open(path.join(here, 'README.md'), encoding='utf-8') as f: | ||||
|  | ||||
| setup( | ||||
|     name='namekoplus', | ||||
|     version='0.4.10', | ||||
|     version='0.4.27', | ||||
|     description='A lightweight Python distributed microservice solution', | ||||
|     long_description=long_description, | ||||
|     long_description_content_type='text/markdown', | ||||
|     url='', | ||||
|     project_urls={ | ||||
|         'Documentation': 'https://doc.bearcatlog.com/', | ||||
|         'Source Code': 'https://github.com/Bryanthelol/namekoplus', | ||||
|         'Bug Tracker': 'https://github.com/Bryanthelol/namekoplus/issues', | ||||
|     }, | ||||
| @@ -50,7 +49,7 @@ setup( | ||||
|     install_requires=[ | ||||
|         'nameko==3.0.0rc11', | ||||
|         'click==8.1.5', | ||||
|         'python-on-whales==0.64.0', | ||||
|         'python-on-whales==0.65.0', | ||||
|         'pytest==7.4.0', | ||||
|         'mako==1.2.4', | ||||
|         'shortuuid==1.0.11' | ||||
| @@ -58,13 +57,15 @@ setup( | ||||
|     extras_require={ | ||||
|         'ha': ['tenacity==8.2.2', | ||||
|                'cachetools==5.3.0', | ||||
|                'circuitbreaker==2.0.0', | ||||
|                'logstash_formatter==0.5.17'], | ||||
|         'ob': ['statsd==4.0.1', | ||||
|                'nameko-sentry==1.0.0', | ||||
|                'circuitbreaker==2.0.0'], | ||||
|         'ob': ['nameko-sentry==1.0.0', | ||||
|                'nameko-tracer==1.4.0'], | ||||
|         'log': ['loguru==0.7.2', | ||||
|                 'logstash_formatter==0.5.17'], | ||||
|         'metric': ['statsd==4.0.1'], | ||||
|         'schema': ['marshmallow==3.20.1'], | ||||
|         'security': ['cryptography'], | ||||
|         'dev': ['environs==9.5.0'] | ||||
|         'dev': ['python-dotenv==1.0.0', | ||||
|                 'environs==9.5.0'] | ||||
|     }, | ||||
| ) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user