The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Starch::Plugin::Trace - Add extra trace logging to your manager, states, and stores.

SYNOPSIS

    my $starch = Starch->new(
        plugins => ['::Trace'],
        ....,
    );

DESCRIPTION

This plugin logs a lot of debug information to Log::Any under the trace level.

See the Log::Any documentation for instructions on how to output these log messages using an adapter.

This plugin is meant for non-production use, as logging will reduce performance.

MANAGER LOGGING

These messages are logged from the Starch::Manager object.

new

Every time a Starch::Manager object is created a message is logged in the format of starch.manager.new.

state

Every call to "state" in Starch::Manager is logged in the format of starch.manager.state.$action.$state_id, where $action is either retrieved or created depending on if the state ID was provided.

generate_state_id

Every call to "generate_state_id" in Starch::Manager is logged in the format of starch.manager.generate_state_id.$state_id.

STATE LOGGING

These messages are logged from the Starch::State object.

new

Every time a Starch::State object is created a message is logged in the format of starch.state.new.$state_id.

save

Every call to "save" in Starch::State is logged in the format of starch.state.save.$state_id.

delete

Every call to "delete" in Starch::State is logged in the format of starch.state.delete.$state_id.

reload

Every call to "reload" in Starch::State is logged in the format of starch.state.reload.$state_id.

rollback

Every call to "rollback" in Starch::State is logged in the format of starch.state.rollback.$state_id.

clear

Every call to "clear" in Starch::State is logged in the format of starch.state.clear.$state_id.

mark_clean

Every call to "mark_clean" in Starch::State is logged in the format of starch.state.mark_clean.$state_id.

mark_dirty

Every call to "mark_dirty" in Starch::State is logged in the format of starch.state.mark_dirty.$state_id.

set_expires

Every call to "set_expires" in Starch::State is logged in the format of starch.state.set_expires.$state_id.

reset_expires

Every call to "reset_expires" in Starch::State is logged in the format of starch.state.reset_expires.$state_id.

reset_id

Every call to "reset_id" in Starch::State is logged in the format of starch.state.reset_id.$state_id.

STORE LOGGING

These messages are logged from the Starch::Store object.

The $store_name bits in the below log messages will be the name of the store class minus the Starch::Store:: bit.

new

Every time a Starch::Store object is created a message is logged in the format of starch.store.$store_name.new.

set

Every call to "set" in Starch::Store is logged in the format of starch.store.$store_name.set.$state_key.

get

Every call to "get" in Starch::Store is logged in the format of starch.store.$store_name.get.$state_key.

If the result of calling get is undefined then an additional log will produced of the format starch.store.$store_name.get.$state_key.missing.

remove

Every call to "remove" in Starch::Store is logged in the format of starch.store.$store_name.remove.$state_key.

AUTHORS AND LICENSE

See "AUTHOR" in Starch, "CONTRIBUTORS" in Starch, and "LICENSE" in Starch.