Kong · Schema
SolaceLogPluginConfig
API GatewayAI GatewayAI ConnectivityAgent GatewayEvent GatewayMCP RegistryService MeshLLMKafkaKonnectOpen Source
Properties
| Name | Type | Description |
|---|---|---|
| config | object | |
| name | object | |
| protocols | array | A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins th |
| route | object | If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used. |
| service | object | If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/SolaceLogPluginConfig",
"title": "SolaceLogPluginConfig",
"x-speakeasy-entity": "PluginSolaceLog",
"properties": {
"config": {
"type": "object",
"properties": {
"message": {
"description": "The log message related configuration.",
"type": "object",
"properties": {
"ack_timeout": {
"description": "When using a non-DIRECT guaranteed delivery mode, this property sets the log message acknowledgement timeout (waiting time).",
"type": "integer",
"default": 2000,
"maximum": 100000,
"minimum": 1
},
"custom_fields_by_lua": {
"description": "A key-value map that dynamically modifies log fields using Lua code.",
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"delivery_mode": {
"description": "Sets the log message delivery mode.",
"type": "string",
"default": "DIRECT",
"enum": [
"DIRECT",
"PERSISTENT"
]
},
"destinations": {
"description": "The log message destinations.",
"type": "array",
"items": {
"properties": {
"name": {
"description": "The name of the destination. You can use `$(uri_captures['<capture-identifier>'])` in this field to capture the name from a regex request URI (replace `<capture-identifier>` with a real value; for example `$(uri_captures['queue'])` when the matched route has a path `~/(?<queue>[a-z]+)`).",
"type": "string"
},
"type": {
"description": "The type of the destination.",
"type": "string",
"default": "QUEUE",
"enum": [
"QUEUE",
"TOPIC"
]
}
},
"required": [
"name"
],
"type": "object"
},
"minLength": 1
},
"dmq_eligible": {
"description": "Sets the dead message queue (DMQ) eligible property on the log message.",
"type": "boolean",
"default": false
},
"priority": {
"description": "Sets the log message priority.",
"type": "integer",
"default": 4,
"maximum": 255,
"minimum": 0
},
"sender_id": {
"description": "Allows the application to set the sender identifier.",
"type": "string"
},
"tracing": {
"description": "Enable or disable the tracing propagation. This is primarily used for distributed tracing and message correlation, especially in debugging or tracking message flows across multiple systems.",
"type": "boolean",
"default": false
},
"tracing_sampled": {
"description": "Forcibly turn on the tracing on all the messages for distributed tracing (tracing needs to be enabled as well).",
"type": "boolean",
"default": false
},
"ttl": {
"description": "Sets the time to live (TTL) in milliseconds for the log message. Setting the time to live to zero disables the TTL for the log message.",
"type": "integer",
"default": 0
}
},
"required": [
"destinations"
]
},
"session": {
"description": "Session related configuration.",
"type": "object",
"properties": {
"authentication": {
"description": "Session authentication related configuration.",
"type": "object",
"properties": {
"access_token": {
"description": "The OAuth2 access token used with `OAUTH2` authentication scheme when connecting to an event broker.",
"type": "string",
"x-encrypted": true,
"x-referenceable": true
},
"access_token_header": {
"description": "Specifies the header that contains access token for the `OAUTH2` authentication scheme when connecting to an event broker. This header takes precedence over the `access_token` field.",
"type": "string"
},
"basic_auth_header": {
"description": "Specifies the header that contains Basic Authentication credentials for the `BASIC` authentication scheme when connecting to an event broker. This header takes precedence over the `username` and `password` fields.",
"type": "string"
},
"id_token": {
"description": "The OpenID Connect ID token used with `OAUTH2` authentication scheme when connecting to an event broker.",
"type": "string",
"x-encrypted": true,
"x-referenceable": true
},
"id_token_header": {
"description": "Specifies the header that contains id token for the `OAUTH2` authentication scheme when connecting to an event broker. This header takes precedence over the `id_token` field.",
"type": "string"
},
"password": {
"description": "The password used with `BASIC` authentication scheme when connecting to an event broker.",
"type": "string",
"maxLength": 128,
"x-encrypted": true,
"x-referenceable": true
},
"scheme": {
"description": "The client authentication scheme used when connection to an event broker.",
"type": "string",
"default": "BASIC",
"enum": [
"BASIC",
"NONE",
"OAUTH2"
]
},
"username": {
"description": "The username used with `BASIC` authentication scheme when connecting to an event broker.",
"type": "string",
"maxLength": 189,
"x-encrypted": true,
"x-referenceable": true
}
}
},
"calculate_message_expiry": {
"description": "If this property is true and time-to-live has a positive value in a message, the expiration time is calculated when the message is sent or received",
"type": "boolean",
"default": true
},
"connect_timeout": {
"description": "The timeout period (in milliseconds) for a connect operation to a given host (per host).",
"type": "integer",
"default": 3000,
"maximum": 100000,
"minimum": 100
},
"generate_rcv_timestamps": {
"description": "When enabled, a receive timestamp is recorded for each message.",
"type": "boolean",
"default": true
},
"generate_send_timestamps": {
"description": "When enabled, a send timestamp is automatically included (if not already present) in the Solace-defined fields for each message sent.",
"type": "boolean",
"default": true
},
"generate_sender_id": {
"description": "When enabled, a sender id is automatically included (if not already present) in the Solace-defined fields for each message sent.",
"type": "boolean",
"default": true
},
"generate_sequence_number": {
"description": "When enabled, a sequence number is automatically included (if not already present) in the Solace-defined fields for each message sent.",
"type": "boolean",
"default": true
},
"host": {
"description": "The IPv4 or IPv6 address or host name to connect to (see: https://docs.solace.com/API-Developer-Online-Ref-Documentation/c/index.html#host-entry).",
"type": "string",
"x-referenceable": true
},
"properties": {
"description": "Additional Solace session properties (each setting needs to have `SESSION_` prefix).",
"type": "object",
"additionalProperties": {
"type": "string",
"x-lua-required": true,
"x-referenceable": true
}
},
"ssl_validate_certificate": {
"description": "Indicates whether the API should validate server certificates with the trusted certificates.",
"type": "boolean",
"default": true
},
"vpn_name": {
"description": "The name of the Message VPN to attempt to join when connecting to an event broker.",
"type": "string",
"maxLength": 32
}
},
"required": [
"host"
]
}
},
"required": [
"message",
"session"
]
},
"name": {
"const": "solace-log"
},
"protocols": {
"description": "A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls.",
"type": "array",
"items": {
"enum": [
"grpc",
"grpcs",
"http",
"https",
"ws",
"wss"
],
"type": "string"
},
"format": "set",
"default": [
"grpc",
"grpcs",
"http",
"https",
"ws",
"wss"
]
},
"route": {
"description": "If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
}
}
},
"service": {
"description": "If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
}
}
}
},
"required": [
"config"
]
}