Skip to content

Conversation

@tombruijn
Copy link

When a custom payload value is a String that contains multiple words, logfmt formatters break. Surround these values with quotes so that logfmt parsers don't think the second word is the start of the message I've chosen to let Ruby handle the escaping of the value by calling inspect so that single and double quotes are properly (double) escaped.

I don't know if the default KeyValue formatter is supposed to be logfmt compatible, but it's very close so following the logfmt format here for escaping multi word values seems like a good idea.

Change the RuboCop config to exclude all Ruby files in the spec dir for the "Metrics/BlockLength" rule so that the shared examples files aren't breaking the build.

When a custom payload value is a String that contains multiple words,
logfmt formatters break. Surround these values with quotes so that
logfmt parsers don't think the second word is the start of the message
I've chosen to let Ruby handle the escaping of the value by calling
`inspect` so that single and double quotes are properly (double)
escaped.

I don't know if the default KeyValue formatter is supposed to be logfmt
compatible, but it's very close so following the logfmt format here
for escaping multi word values seems like a good idea.

Change the RuboCop config to exclude all Ruby files in the `spec` dir
for the "Metrics/BlockLength" rule so that the shared examples files
aren't breaking the build.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant