Troubleshooting syslog-ng
The following sections help you troubleshoot the syslog-ng statefulset component of the Logging operator.
Check syslog-ng pod status (statefulset)
Verify that the syslog-ng statefulset is available using the following command: kubectl get statefulsets
Expected output:
NAME READY AGE
logging-demo-syslogng 1/1 1m
ConfigCheck
The Logging operator has a builtin mechanism that validates the generated syslog-ng configuration before applying it to syslog-ng. You should be able to see the configcheck pod and its log output. The result of the check is written into the status
field of the corresponding Logging
resource.
In case the operator is stuck in an error state caused by a failed configcheck, restore the previous configuration by modifying or removing the invalid resources to the point where the configcheck pod is finally able to complete successfully.
Check syslog-ng configuration
Use the following command to display the configuration of syslog-ng:
kubectl get secret logging-demo-syslogng-app -o jsonpath="{.data['syslogng\.conf']}" | base64 --decode
Getting Support
If you encounter any problems that the documentation does not address, file an issue or talk to us on Discord or Slack.
Before asking for help, prepare the following information to make troubleshooting faster:
- Logging operator version
- kubernetes version
- helm/chart version (if you installed the Logging operator with helm)
- Logging operator logs
- fluentd configuration
- fluentd logs
- fluentbit configuration
- fluentbit logs
Do not forget to remove any sensitive information (for example, passwords and private keys) before sharing.