Sharing logs with Tonic

You can automatically share logs from your on-premises installation with Tonic engineers in a secure and safe way.

How Tonic uses the Tonic logs

Tonic uses these logs to diagnose issues, troubleshoot bugs, help identify when performance can be improved, and to generally improve Tonic and its features.
By default, the logs are not shared with Tonic.
If you do not share logs with Tonic, then identifying problems and troubleshooting issues becomes a slower, more manual process.

Log file architecture

Tonic log architecture
Tonic log files are stored in an Amazon S3 bucket for one year.
Tonic uses a log aggregator to make the log files searchable. On the log aggregator, job logs are deleted after six months. API logs are deleted after 60 days.

What is in the log data

Schema information

Tonic logs include detailed schema information for your database, including:
  • Table, schema, and column names
  • Data types
  • Table sizes

Usage information

Tonic includes many types of usage information in the logs, including information related to:
  • Actions in the user interface, from web requests that the web server sees
  • Details related to data generation
  • Workspace configuration details, such as the generators that are applied to each column

Performance data

Tonic collects detailed performance data for the generation process, including data transfer rates and code profiler results.

What is NOT in the log data

Tonic has strong safeguards in place to ensure that actual data does not leak into logs.
Tonic does not log information related to the database connection, such as the database username, password, and host.

Setting up log sharing

You can enable logging on each individual Tonic container.
For a container for which you wish to enable log sharing, add the following environment variables to the container:
ENVIRONMENT_NAME: "your company's name, in lowercase with no spaces"

Viewing what is sent to Tonic

Tonic writes all logs to STDOUT. To view the exact logs that are collected and shared, view what is written to STDOUT.
If the Tonic container runs in Docker, you can run:
docker logs tonic_worker