Closed andrzej-stencel closed 5 months ago
Hey @andrzej-stencel, what you described for RFC5424 makes sense. You spotted it right.
Let me add that similar relaxations have been implemented for RFC3164 to allow more non-compliant old syslog formats (eg., OpenBSD without hostname part, etc.). In this case tho, there is no option pattern (With<Something>()
) implemented at the moment. Maybe that's an idea for a future contribution!
First of all I want to thank @leodido for continuing to work on the
go-syslog
package. š This package is currently used by the OpenTelemetry Collector Contrib for parsing of syslog messages, used for example in the Syslog receiver of the collector. Btw. perhaps it's worth adding an adopters file in this repo?Triggered by the archiving of the https://github.com/influxdata/go-syslog repository, we are planning to replace the
influxdata/go-syslog/v3
package withleodido/go-syslog/v4
(https://github.com/open-telemetry/opentelemetry-collector-contrib/pull/33205). This brings the question: are there any breaking changes that users looking to do similar switch should look out for?Looking at the release notes for v4.0.0, seems to me that the only change that might be worth describing as potentially breaking is Allow non UTF8 characters in message #35, as it changes the default behavior of the parser to be more permissive. This means that if someone was relying on the package to reject non-compliant messages, they might need to use the
WithCompliantMsg
option. Does this make sense?