NAME
PAUSEx::Log - Access the PAUSE log
SYNOPSIS
use
v5.36;
use
PAUSEx::Log;
my
$start
=
time
;
FETCH:
while
( 1 ) {
last
if
time
-
$start
> 10 * 60;
my
$entries
= PAUSEx::Log->fetch_log();
MESSAGE:
foreach
my
$entry
(
$entries
->@* ) {
next
unless
$entry
->is_for_pauseid(
'BDFOY'
);
say
$entry
->message;
last
FETCH
if
...
}
sleep
5*60;
}
DESCRIPTION
The Perl Authors Upload Server provides a tail of its log file so module authors can check the progress of their modules through the PAUSE process. This might take several minutes from the time of upload, and I want to monitor the log until I know my latest release has been seen by PAUSE.
This module fetches that log and digests it in various ways.
Class methods
- fetch_log( PAUSE_USER, PAUSE_PASS )
-
Fetch the PAUSE log, using your PAUSE ID and password. You can also set these in the
CPAN_PASS
andCPAN_PASS
environment variables, which this function will automatically pick up.
Instance methods
- can( METHOD )
-
Returns true if the message contains that information since different types of message have different things they record. For example, not all messages contain the PAUSE ID
if
(
$entry
->can(
'pause_id'
) ) { ... }
- date
-
(Common) The date of the log line, in YYYY-MM-DD
- distname
-
The distribution name (Foo-Bar-1.23.tgz), if the message refers to one.
- for_pause_id( PAUSE_ID )
-
Returns true if the log message is about PAUSE_ID.
foreach
my
$entry
( fetch()->@* ) {
next
unless
$entry
->for_pause_id(
'BDFOY'
);
...
}
- id
-
(Common) A made up unique ID for the log message so you can tell if you've seen that log line before.
- level
-
(Common) The log level
- message
-
(Common) The log message
- pause_id
-
The PAUSE ID of the message, if the message refers to one
- time
-
(Common) The time of the log entry
- type
-
(Common) The type of message
TO DO
SEE ALSO
SOURCE AVAILABILITY
This source is in Github:
AUTHOR
brian d foy, <brian d foy>
COPYRIGHT AND LICENSE
Copyright © 2023-2025, brian d foy, All Rights Reserved.
You may redistribute this under the terms of the Artistic License 2.0.