Log Formatting
Message Formatting
Supported Log Formats
How you can format your logs will vary depending on which configuration you are using with Logging. The table below outlines the currently available configurations and the log formats which they support
Platform | JSON | Logfmt | Plaintext |
---|---|---|---|
AWS Kinesis / CloudWatch | ✓ | ✓ | ✓ |
Clever Cloud | ✓ | ✓ | ✓ |
Gigalixir Log Drain | ✗ | ✗ | ✓ |
Heroku Log Drain | ✓ | ✓ | ✓ |
HTTP | ✓ | ✓ | ✓ |
Netlify | ✗ | ✗ | ✓ |
Render | ✓ | ✓ | ✓ |
Scalingo | ✓ | ✓ | ✓ |
Syslog | ✓ | ✓ | ✓ |
Fixed-format endpoint
We have one special endpoint/source, and that's the http-json
endpoint. This endpoint is intended for customers implementing their own log forwarding solution, or log implementation.
This endpoint expects a specific NDJSON format, and will silently ignore any messages that do not match this format.
Attributes
When using Logfmt or JSON as your log format, you can add searchable attributes to your logs. Attributes can be any of the following types:
- string
- integer (e.g.
10
) - double (e.g.
10.01
) - boolean (
true
/false
)
Plaintext
When specifying Plaintext as your log format, the log line will be used as the message as-is, and AppSignal will not parse attributes from the log line. If you want to have searchable attributes in your application's logs, we recommend formatting your logs in Logfmt or JSON.