syslog
Description
The syslog parameter specifies the endpoint to forward logs to a syslog server (e.g. tcp+tls://example.org:1234).
Default Value
The default value for syslog is "".
Use Cases
- Centralized Logging: Forward logs to a central syslog server for easier monitoring and analysis.
- Compliance: Meet compliance requirements by ensuring all logs are collected and stored in a central location.
Setting Parameters
To set the syslog parameter, use the following command:
$ convox rack params set syslog=tcp+tls://example.org:1234 -r rackName
Updating parameters... OK
The change rolls the Fluentd pods on every node.
Additional Information
When set to "", syslog forwarding is not enabled. Ensure that the syslog endpoint is reachable and configured to receive logs from your Convox Rack.
- Scheme and port: the URL scheme is
tcp,tcp+tlsorudp, and the port defaults to514when the URL leaves it out. Any other scheme, such asudp+tls, forwards nothing. - What is forwarded: Fluentd forwards the container output of every App's Services, Timers,
convox runProcesses and Builds, and of the Rack's own system Pods such as the API, router and resolver. It does not collect containerized Resources such aspostgresorredis, Kubernetes add-ons such as CoreDNS, or a Service whose name starts withfluentdorcloudwatch-agent. The Rack's own event lines, such as deploy state changes, are written to Elasticsearch directly and are not forwarded. Every router line, access lines included, is forwarded. - Message format: each line is sent with facility
userand severityinfo. The syslog hostname is<rack>.<app>and the tag is<type>/<name>/<pod>, cut to 32 characters:service/web/<pod>for a Service,timer/<timer>/<pod>for a Timer, andprocess/<service>/<pod>for aconvox runProcess. Overtcpandtcp+tls, a line of up to 16,384 bytes arrives whole. Overudp, each message, header and tag included, is cut at 1,024 bytes. - TLS: from Rack version
3.25.11, Fluentd verifies atcp+tlsendpoint's certificate against public certificate authorities. For an endpoint with a self-signed or private-CA certificate, setsyslog_tls_verifytofalse. - Masking:
router_log_redact_paramsmasks query parameter values in router lines before they are stored or forwarded. - Failing endpoint: when a
tcportcp+tlsendpoint refuses the connection, is unreachable, fails certificate verification or stops reading, Fluentd drops the line it was sending, logs a warning, skips syslog output for 60 seconds, then reconnects. Lines written during the pause are not resent. Each failure delays Elasticsearch delivery on that node by up to about 10 seconds, and nothing is lost from Elasticsearch. Audpendpoint that is down returns no error, so lines sent to it are lost without a warning.
See Also
- syslog_tls_verify for certificate verification on
tcp+tlsendpoints - router_log_redact_params for masking query parameter values in router logs
- Logging for log forwarding on every provider
- fluentd_memory for Fluentd memory on high log volume