Celeritas 0.7.0-dev.290+develop.6f2e532a
Loading...
Searching...
No Matches
Classes | Typedefs | Enumerations | Functions
LoggerTypes.hh File Reference

Type definitions for logging utilities. More...

#include <cstdlib>
#include <functional>
#include <string>
#include <string_view>

Classes

struct  celeritas::LogProvenance
 Origin of a log message. More...
 

Typedefs

using celeritas::LogHandler = std::function< void(LogProvenance, LogLevel, std::string)>
 Type for handling a log message.
 

Enumerations

enum class  celeritas::LogLevel {
  debug , diagnostic , status , info ,
  warning , error , critical , size_
}
 Enumeration for how important a log message is. More...
 

Functions

char constceleritas::to_cstring (LogLevel lev)
 Get the plain text equivalent of the LogLevel enum.
 
char constceleritas::to_ansi_color (LogLevel lev)
 Get an ANSI color code appropriate to each log level.
 
LogLevel celeritas::getenv_loglevel (std::string const &level_env, LogLevel default_lev)
 Get the log level from an environment variable.
 

Detailed Description

Type definitions for logging utilities.

Enumeration Type Documentation

◆ LogLevel

enum class celeritas::LogLevel
strong

Enumeration for how important a log message is.

Enumerator
debug 

Debugging messages.

diagnostic 

Diagnostics about current program execution.

status 

Program execution status (what stage is beginning)

info 

Important informational messages.

warning 

Warnings about unusual events.

error 

Something went wrong, but execution can continue.

critical 

Something went terribly wrong, should probably abort.

size_ 

Sentinel value for looping over log levels.

Function Documentation

◆ getenv_loglevel()

LogLevel celeritas::getenv_loglevel ( std::string const level_env,
LogLevel  default_lev 
)

Get the log level from an environment variable.

Exceptions
RuntimeErrorif string is invalid