class Analogger::Core

Defined in:

analogger/core.cr
analogger/core/daemonize.cr
analogger/core/exec_arguments.cr
analogger/core/log.cr

Constant Summary

DEFAULT_SEVERITY_LEVELS = ["debug", "info", "warn", "error", "fatal"].each_with_object({} of String => Bool) do |k, h| h[k] = true end
EXIT_SIGNALS = [Signal::INT, Signal::TERM]
RELOAD_SIGNALS = [Signal::HUP]
RESTART_SIGNALS = [Signal::USR2]

Constructors

Class Method Summary

Instance Method Summary

Constructor Detail

def self.new(command_line : CommandLine) #

[View source]

Class Method Detail

def self.default_log : String #

[View source]
def self.default_log=(default_log : String) #

[View source]
def self.default_log_destination : Analogger::Destination::File | IO::FileDescriptor | Nil #

[View source]
def self.default_log_destination=(default_log_destination : Analogger::Destination::File | IO::FileDescriptor | Nil) #

[View source]

Instance Method Detail

def add_log(log) #

[View source]
def any_in_queue? #

[View source]
def check_config_settings #

[View source]
def cleanup #

[View source]
def cleanup_and_reopen #

[View source]
def config : Config #

[View source]
def config=(config : Config) #

[View source]
def create_periodic_timers #

[View source]
def daemonize #

[View source]
def flush_queue #

[View source]
def fsync_or_flush(dest) #

[View source]
def handle(client) #

[View source]
def handle_daemonize #

[View source]
def handle_pending_and_exit #

[View source]
def invocation_arguments : ExecArguments #

[View source]
def invocation_arguments=(invocation_arguments : ExecArguments) #

[View source]
def key : String #

[View source]
def key=(key : String) #

[View source]
def logfile_destination(logfile : IO, type : String | Nil = "file", options : Array(String) | Nil = ["ab"]) #

[View source]
def logfile_destination(logfile : String, type : String | Nil = "file", options : Array(String) | Nil = ["ab"]) #

[View source]
def normalize_levels(levels : String) #

[View source]
def normalize_levels(levels : Array) #

[View source]
def normalize_levels(levels : Bool | Nil) #

[View source]
def normalize_levels(levels : Hash) #

[View source]
def normalize_levels(levels : Int32 | YAML::Any) #

[View source]
def populate_logs #

Iterate through the logs entries in the configuration file, and create a log entity for each one.


[View source]
def postprocess_config_load #

[View source]
def purge_queues #

[View source]
def safe_trap(signal_list : Array(Signal), &operation) #

[View source]
def set_config_defaults #

[View source]
def setsid #

[View source]
def setup_signal_traps #

[View source]
def sid(pid : Int32 = 0) #

[View source]
def start #

[View source]
def write_queue #

[View source]