Logging¶
This page describes the different logs files produced by the Inmanta server and its agents and explains what can be configured regarding to logging.
Overview different log files¶
By default log files are collected in the directory /var/log/inmanta/
. Three different types of log files exist: the
server log, the resource action logs and the agent logs. The server log and the resource action log files are produced by
the Inmanta server. The agent log files are produced by the Inmanta agents.
Server log¶
The server.log
file contains general debugging information regarding the Inmanta server. It shows information about actions
performed by the Inmanta server (renewing parameters, purging resource action logs, etc.), API requests received by the
Inmanta server, etc.
Resource action logs¶
The resource action log files contain information about actions performed on a specific resource. Each environment has one
resource action log file. The filename of this log file looks as follows:
<server.resource-action-log-prefix>-<environment-id>.log
. The prefix can be configured with the configuration option
server.resource-action-log-prefix
.
The resource action log file contains information about the following resource action:
Store: A new version of a configuration model and its resources has been pushed to the Inmanta server.
Pull: An agent pulled its resources from the Inmanta server.
Deploy: When an agent starts and ends the deployment of a certain resource.
Dryrun: Execute a dryrun for a certain resource.
Agent logs¶
One agent produces the following three log files:
agent-<environment-id>.log
: This is the main log file of an agent. It contains information about when the agent started a deployment, which trigger caused that deployment, whether heartbeat messages are received from the server, whether the agent is a primary agent, etc.agent-<environment-id>.out
: This log file contains all the messages written to the standard output stream of the resource handlers used by the agent.agent-<environment-id>.err
: This log file contains all the messages written to the standard error stream of the resource handlers used by the agent.
Configure logging¶
Configuration options in Inmanta config file¶
The following log-related options can be set in an Inmanta config file:
log-dir
purge-resource-action-logs-interval
resource-action-log-prefix
Documentation on these options can be found in the Inmanta configuration reference.
Change log levels server log¶
Edit the --log-file-level
option in the ExecStart command of the inmanta-server service file. The inmanta-server service
file can be found at /usr/lib/systemd/system/inmanta-server.service
.
[Unit]
Description=The server of the Inmanta platform
After=network.target
[Service]
Type=simple
User=inmanta
Group=inmanta
ExecStart=/usr/bin/inmanta --log-file /var/log/inmanta/server.log --log-file-level 2 --timed-logs server
Restart=on-failure
[Install]
WantedBy=multi-user.target
The --log-file-level
takes the log-level as an integer, where 0=ERROR
, 1=WARNING
, 2=INFO
and 3=DEBUG
.
Apply the changes by reloading the service file and restarting the Inmanta server:
sudo systemctl daemon-reload
sudo systemctl restart inmanta-server
Log level manually started agent¶
The log level of a manually started agent can be changed in the same way as changing the log level of the Inmanta server. The
service file for a Inmanta agent can be found at /usr/lib/systemd/system/inmanta-agent.service
.
Log level auto-started agents¶
The default log level of an auto-started agent is INFO. Currently it’s not possible to change this log level.
Resource action logs¶
The log level of the resource action log file is DEBUG. Currently it’s not possible to change this log level.
Log level server-side compiles¶
The logs of a server side compile can be seen via the “Compile Reports” button in the web-console. The log level of these logs is DEBUG. Currently, it’s not possible to change this log level.
Log level on CLI¶
By default logs are written to standard output when the inmanta
or the inmanta-cli
command is executed. The default
log level is INFO. The log level of these commands can be changed by passing the correct number of v’s with the option
-v
.
-v = warning
-vv = info
-vvv = debug
-vvvv = traces
By specifying the -X
option, stacktraces are also shown written to standard output when an error occurs. When the
--log-file
option is specified on the commandline, logs are written to file instead of the standard output.