Add logging section info
Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
This commit is contained in:
parent
53264528ee
commit
d17629efd4
2 changed files with 48 additions and 12 deletions
25
README.md
25
README.md
|
|
@ -24,6 +24,19 @@ Whether you're running into issues or just want to drop by and say "hi", feel fr
|
|||
|
||||
Check out the [quickstart](/doc/quickstart.md) document for instructions on how to install ```GARM```. If you'd like to build from source, check out the [building from source](/doc/building_from_source.md) document.
|
||||
|
||||
## Configuration
|
||||
|
||||
The ```GARM``` configuration is a simple ```toml```. The sample config file in [the testdata folder](/testdata/config.toml) is fairly well commented and should be enough to get you started. The configuration file is split into several sections, each of which is documented in its own page. The sections are:
|
||||
|
||||
* [The default section](/doc/config_default.md)
|
||||
* [Logging](/doc/config_logging.md)
|
||||
* [Database](/doc/database.md)
|
||||
* [Github credentials](/doc/github_credentials.md)
|
||||
* [Providers](/doc/providers.md)
|
||||
* [Metrics](/doc/config_metrics.md)
|
||||
* [JWT authentication](/doc/config_jwt_auth.md)
|
||||
* [API server](/doc/config_api_server.md)
|
||||
|
||||
### On Kubernetes
|
||||
|
||||
Thanks to the efforts of the amazing folks at @mercedes-benz, GARM can now be integrated into k8s via their operator. Check out the [GARM operator](https://github.com/mercedes-benz/garm-operator/) for more details.
|
||||
|
|
@ -46,18 +59,6 @@ External providers are binaries that GARM calls into to create runners in a part
|
|||
|
||||
Follow the instructions in the README of each provider to install them.
|
||||
|
||||
## Configuration
|
||||
|
||||
The ```GARM``` configuration is a simple ```toml```. The sample config file in [the testdata folder](/testdata/config.toml) is fairly well commented and should be enough to get you started. The configuration file is split into several sections, each of which is documented in its own page. The sections are:
|
||||
|
||||
* [The default section](/doc/config_default.md)
|
||||
* [Database](/doc/database.md)
|
||||
* [Github credentials](/doc/github_credentials.md)
|
||||
* [Providers](/doc/providers.md)
|
||||
* [Metrics](/doc/config_metrics.md)
|
||||
* [JWT authentication](/doc/config_jwt_auth.md)
|
||||
* [API server](/doc/config_api_server.md)
|
||||
|
||||
## Optimizing your runners
|
||||
|
||||
If you would like to optimize the startup time of new instance, take a look at the [performance considerations](/doc/performance_considerations.md) page.
|
||||
|
|
|
|||
35
doc/config_logging.md
Normal file
35
doc/config_logging.md
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
# The logging section
|
||||
|
||||
GARM has switched to the `slog` package for logging, adding structured logging. As such, we added a dedicated `logging` section to the config to tweak the logging settings. We moved the `enable_log_streamer` and the `log_file` options from the `default` section to the `logging` section. They are still available in the `default` section for backwards compatibility, but they are deprecated and will be removed in a future release.
|
||||
|
||||
An example of the new `logging` section:
|
||||
|
||||
```toml
|
||||
[logging]
|
||||
# Uncomment this line if you'd like to log to a file instead of standard output.
|
||||
# log_file = "/tmp/runner-manager.log"
|
||||
|
||||
# enable_log_streamer enables streaming the logs over websockets
|
||||
enable_log_streamer = true
|
||||
# log_format is the output format of the logs. GARM uses structured logging and can
|
||||
# output as "text" or "json"
|
||||
log_format = "text"
|
||||
# log_level is the logging level GARM will output. Available log levels are:
|
||||
# * debug
|
||||
# * info
|
||||
# * warn
|
||||
# * error
|
||||
log_level = "debug"
|
||||
# log_source will output information about the function that generated the log line.
|
||||
log_source = false
|
||||
```
|
||||
|
||||
By default GARM logs everything to standard output. You can optionally log to file by adding the `log_file` option to the `logging` section. The `enable_log_streamer` option allows you to stream GARM logs directly to your terminal. Set this option to `true`, then you can use the following command to stream logs:
|
||||
|
||||
```bash
|
||||
garm-cli debug-log
|
||||
```
|
||||
|
||||
The `log_format`, `log_level` and `log_source` options allow you to tweak the logging output. The `log_format` option can be set to `text` or `json`. The `log_level` option can be set to `debug`, `info`, `warn` or `error`. The `log_source` option will output information about the function that generated the log line. All these options influence how the structured logging is output.
|
||||
|
||||
This will allow you to ingest GARM logs in a central location such as an ELK stack or similar.
|
||||
Loading…
Add table
Add a link
Reference in a new issue