Nameko · Schema
Nameko Service Configuration
JSON Schema for Nameko microservices framework configuration (config.yml).
AMQPDependency InjectionFrameworksMicroservicesPythonRPCTesting
Properties
| Name | Type | Description |
|---|---|---|
| AMQP_URI | string | AMQP broker connection URI. |
| WEB_SERVER_ADDRESS | string | Address for HTTP entrypoints to listen on. |
| rpc_exchange | string | Name of the RPC exchange. |
| max_workers | integer | Maximum number of concurrent workers per service. |
| parent_calls_tracked | integer | Number of parent calls tracked for call ID stacks. |
| serializer | string | Default serializer for RPC messages. |
| ACCEPT_CONTENT | array | Accepted content types for deserialization. |
| HEARTBEAT | integer | AMQP heartbeat interval in seconds. |
| PREFETCH_COUNT | integer | AMQP consumer prefetch count. |
| LOGIN_METHOD | string | AMQP login method. |
| LOGGING | object | Python logging dictConfig configuration. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://github.com/api-evangelist/nameko/json-schema/nameko-configuration.json",
"title": "Nameko Service Configuration",
"description": "JSON Schema for Nameko microservices framework configuration (config.yml).",
"type": "object",
"properties": {
"AMQP_URI": {
"type": "string",
"default": "pyamqp://guest:guest@localhost",
"description": "AMQP broker connection URI."
},
"WEB_SERVER_ADDRESS": {
"type": "string",
"default": "0.0.0.0:8000",
"description": "Address for HTTP entrypoints to listen on."
},
"rpc_exchange": {
"type": "string",
"default": "nameko-rpc",
"description": "Name of the RPC exchange."
},
"max_workers": {
"type": "integer",
"default": 10,
"description": "Maximum number of concurrent workers per service."
},
"parent_calls_tracked": {
"type": "integer",
"default": 10,
"description": "Number of parent calls tracked for call ID stacks."
},
"serializer": {
"type": "string",
"default": "json",
"description": "Default serializer for RPC messages."
},
"ACCEPT_CONTENT": {
"type": "array",
"items": { "type": "string" },
"default": ["json"],
"description": "Accepted content types for deserialization."
},
"HEARTBEAT": {
"type": "integer",
"default": 60,
"description": "AMQP heartbeat interval in seconds."
},
"PREFETCH_COUNT": {
"type": "integer",
"default": 10,
"description": "AMQP consumer prefetch count."
},
"LOGIN_METHOD": {
"type": "string",
"description": "AMQP login method."
},
"LOGGING": {
"type": "object",
"properties": {
"version": { "type": "integer", "default": 1 },
"handlers": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"class": { "type": "string" },
"level": { "type": "string" },
"formatter": { "type": "string" }
}
}
},
"root": {
"type": "object",
"properties": {
"level": { "type": "string" },
"handlers": {
"type": "array",
"items": { "type": "string" }
}
}
}
},
"description": "Python logging dictConfig configuration."
}
}
}