GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Mojo::Log(3) User Contributed Perl Documentation Mojo::Log(3)

Mojo::Log - Simple logger

  use Mojo::Log;

  # Log to STDERR
  my $log = Mojo::Log->new;

  # Customize log file location and minimum log level
  my $log = Mojo::Log->new(path => '/var/log/mojo.log', level => 'warn');

  # Log messages
  $log->trace('Doing stuff');
  $log->debug('Not sure what is happening here');
  $log->info('FYI: it happened again');
  $log->warn('This might be a problem');
  $log->error('Garden variety error');
  $log->fatal('Boom');

Mojo::Log is a simple logger for Mojo projects.

Mojo::Log inherits all events from Mojo::EventEmitter and can emit the following new ones.

  $log->on(message => sub ($log, $level, @lines) {...});

Emitted when a new message gets logged.

  $log->on(message => sub ($log, $level, @lines) { say "$level: ", @lines });

Mojo::Log implements the following attributes.

  my $bool = $log->color;
  $log     = $log->color($bool);

Colorize log messages with the levels "warn", "error" and "fatal" using Term::ANSIColor, defaults to the value of the "MOJO_LOG_COLOR" environment variables. Note that this attribute is EXPERIMENTAL and might change without warning!

  my $cb = $log->format;
  $log   = $log->format(sub {...});

A callback for formatting log messages.

  $log->format(sub ($time, $level, @lines) { "[2018-11-08 14:20:13.77168] [28320] [info] I ♥ Mojolicious\n" });

  my $handle = $log->handle;
  $log       = $log->handle(IO::Handle->new);

Log filehandle used by default "message" event, defaults to opening "path" or "STDERR".

  my $history = $log->history;
  $log        = $log->history([[time, 'debug', 'That went wrong']]);

The last few logged messages.

  my $level = $log->level;
  $log      = $log->level('debug');

Active log level, defaults to "trace". Available log levels are "trace", "debug", "info", "warn", "error" and "fatal", in that order.

  my $size = $log->max_history_size;
  $log     = $log->max_history_size(5);

Maximum number of logged messages to store in "history", defaults to 10.

  my $path = $log->path
  $log     = $log->path('/var/log/mojo.log');

Log file path used by "handle".

  my $bool = $log->short;
  $log     = $log->short($bool);

Generate short log messages without a timestamp but with journald log level prefix, suitable for systemd environments, defaults to the value of the "MOJO_LOG_SHORT" environment variables.

Mojo::Log inherits all methods from Mojo::EventEmitter and implements the following new ones.

  $log->append("[2018-11-08 14:20:13.77168] [28320] [info] I ♥ Mojolicious\n");

Append message to "handle".

  my $new = $log->context('[extra]', '[information]');

Construct a new child Mojo::Log object that will include context information with every log message.

  # Log with context
  my $log = Mojo::Log->new;
  my $context = $log->context('[17a60115]');
  $context->debug('This is a log message with context information');
  $context->info('And another');

  $log = $log->debug('You screwed up, but that is ok');
  $log = $log->debug('All', 'cool');
  $log = $log->debug(sub {...});

Emit "message" event and log "debug" message.

  $log = $log->error('You really screwed up this time');
  $log = $log->error('Wow', 'seriously');
  $log = $log->error(sub {...});

Emit "message" event and log "error" message.

  $log = $log->fatal('Its over...');
  $log = $log->fatal('Bye', 'bye');
  $log = $log->fatal(sub {...});

Emit "message" event and log "fatal" message.

  $log = $log->info('You are bad, but you prolly know already');
  $log = $log->info('Ok', 'then');
  $log = $log->info(sub {...});

Emit "message" event and log "info" message.

  my $bool = $log->is_level('debug');

Check active log "level".

  # True
  $log->level('debug')->is_level('debug');
  $log->level('debug')->is_level('info');

  # False
  $log->level('info')->is_level('debug');
  $log->level('fatal')->is_level('warn');

  my $log = Mojo::Log->new;
  my $log = Mojo::Log->new(level => 'warn');
  my $log = Mojo::Log->new({level => 'warn'});

Construct a new Mojo::Log object and subscribe to "message" event with default logger.

  $log = $log->trace('Whatever');
  $log = $log->trace('Who', 'cares');
  $log = $log->trace(sub {...});

Emit "message" event and log "trace" message.

  $log = $log->warn('Dont do that Dave...');
  $log = $log->warn('No', 'really');
  $log = $log->warn(sub {...});

Emit "message" event and log "warn" message.

Mojolicious, Mojolicious::Guides, <https://mojolicious.org>.
2021-12-08 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.