In the case of OpenDCRE failures or errors, it is helpful to know how some basic debugging steps.
As covered in the subsequent sections here, OpenDCRE logs out to files within the container. One exception to this
is for errors on container startup. In addition to logging out to file, it logs out to stderr of the container
(pid 1), so it is accessible via
docker logs. If a startup error should occur, the OpenDCRE container should
terminate. In this case, it is often prudent to check the docker logs first to see if there is any information
pertaining to a startup error.
docker logs opendcre
A startup error likely will only happen if there is a serious misconfiguration, or if building a custom OpenDCRE image, something was changed to break the initialization process.
Enabling Debug Logging
By default, production logging is enabled (logging at an ERROR level). To run things in "debug" mode, where DEBUG level
logs are collected, simply run the container with the environment variable
VAPOR_DEBUG set to
true. This can be
done in the docker command
docker run -p 5000:5000 -e VAPOR_DEBUG=true vaporio/opendcre
or via composefile
opendcre: image: vaporio/opendcre ports: - 5000:5000 environment: - VAPOR_DEBUG=true
With debug logging enabled, there will be two sets of logs captured -- the error logs (same as the production logs), and the debug logs.
Examining Log Files
There are two primary methods for accessing a container's logs:
docker exec and
docker exec requires the container to be running. If the container has terminated and you need to get at the
logs, this is not the method that should be used. To exec into a container interactively,
docker exec -ti <name or id of container> /bin/bash
This will drop you into the working directory of the container,
/opendcre. From there, navigate to
all of the container logs are kept.
docker cp can be done when the container is running or when it has terminated. It is used to copy the logs
from the container file system to the host file system.
docker cp <name or id of container>:/logs <host copy destination>
This will place the log files on the host system at the specified location.