Graylog: How to resolve the issue
This documentation is part of the Data mapping issues guide. View the full guide here: How to solve Graylog index data mapping problems.
👋 Welcome to Stackhero documentation
Stackhero provides a fully managed Graylog cloud solution designed for speed and simplicity. You can:
- Rely on an unlimited, dedicated SMTP email server included with your service.
- Apply updates effortlessly with a single click, with no manual intervention needed.
- Use a custom domain name secured by HTTPS (for example, https://logs.your-company.com), giving your team secure, direct access.
- Experience strong performance and security on a private, dedicated infrastructure with no shared resources or noisy neighbors.
Focus on your data, not your tooling: you can get started with Stackhero's Graylog cloud hosting solution in just a few minutes.
To resolve this issue, you have 2 options:
1. Ensure consistent data types across systems
The ideal solution is to standardize the data types used for fields across all systems sending data to Graylog. For example, ensure that the "level" field is always sent as either a string (like "error", "warn", etc.) or always as a number (3, 4, etc.). This consistency prevents mapping conflicts and ensures all documents are ingested correctly.
2. Use Graylog pipelines for data conversion
If standardizing data types across all systems is not feasible, you can use Graylog's pipelines to convert data types upon receipt. Pipelines allow you to define rules that transform data based on specific conditions.
To implement this solution:
- Navigate to "System" > "Pipelines" in the Graylog web interface.
- Click "Add new pipeline" to create a new pipeline.
- Define rules to convert the "level" field (or other fields) to the desired data type. For example, you can convert numeric levels to their corresponding string representations (like 3 to "error", 4 to "warning", etc.).
This approach ensures that all incoming data conforms to the expected data types, preventing mapping conflicts.