Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add configurable logging levels #155

Open
snixtho opened this issue Jun 1, 2021 · 0 comments
Open

Add configurable logging levels #155

snixtho opened this issue Jun 1, 2021 · 0 comments
Labels
feature New feature or request improvement Improve the current code

Comments

@snixtho
Copy link
Member

snixtho commented Jun 1, 2021

Describe the feature you'd like to see in EvoSC
There should be some better control over the logging output in form of logging levels. This is very useful when setting up servers in production, testing, and development.

There are some security implications as well with the current logging system. Taking this screenshot as an example:
unknown

Here we see the server credentials being written straight into the logs when an error occurred. This can be very bad as malicious users could potentially obtain full control over the server from a lower privilege level. By having logging level support, stack traces like these can be disabled in production environments.

I suggest the following logging levels:

  • Fatal: For errors that can result in a crash or a component of the controller no longer working properly.
  • Error: Anything that failed or errored, but does not necessarily result in a crash or non-working components and is recoverable.
  • Warning: For anything that was unexpected with minor disturbances to the program flow.
  • Info: Generic message indicating a change of or current state of the controller.
  • Debug: A higher level of verbosity of info. Can include stack traces and may have some sensitive information.
  • Trace: A higher level of verbosity of Debug and can contain messages with internal object values, including any level of sensitive information.

A "trace" level, can be added, but it's not really necessary, but it can be set to enable the highest verbosity level (-vvv).

The logging level should be configurable in a config file.

Feel free to comment your opinion or come with suggestions that can improve this idea.

@snixtho snixtho added feature New feature or request improvement Improve the current code labels Jun 1, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request improvement Improve the current code
Projects
None yet
Development

No branches or pull requests

1 participant