刘刊 > pantheon-0.58 > Janus::Ctrl

Download:
pantheon-0.58.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Source  

NAME ^

Janus::Ctrl - Controls maintenance via a SQLite database

SYNOPSIS ^

 use Janus::Ctrl;

 my $ctrl = Janus::Ctrl->new( $name => '/sqlite/file' );

 $ctrl->clear();
 $ctrl->pause( 'foo.alpha', 'blah' );
 $ctrl->resume();
 $ctrl->exclude( 'foobar', 'blah' );
 sleep 3 if $ctrl->stuck();

DATABASE ^

A SQLITE db has a watcher table of four columns:

 name : name of maintenance
 ctrl : 'error', 'pause' or 'exclude'
 node : stage name or node name
 info : additional information, if any

METHODS ^

pause( $stage, $info, $ctrl = 'pause' )

Insert a record that cause stuck.

stuck( @stage )

Return records that cause @stage to be stuck. Return all records if @stage is not defined.

resume( @stage )

Clear records that cause @stage to be stuck. Clear all records if @stage is not defined.

exclude( $node, $info )

Exclude $node with a $info.

excluded()

Return ARRAY ref of excluded nodes.

dump()

Return ARRAY ref of *.

clear()

clear all records.

any()

A pseudo-stage that applies to all stages.

syntax highlighting: