From: Arthur Axel 'fREW' Schmidt Date: Thu, 27 May 2010 23:54:30 +0000 (-0500) Subject: nicer logging X-Git-Tag: v0.001000_12~4 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=dbsrgits%2FDBIx-Class-DeploymentHandler.git;a=commitdiff_plain;h=8465e76797613fa0b9c85365c03d26cacbaab31a nicer logging --- diff --git a/lib/DBIx/Class/DeploymentHandler.pm b/lib/DBIx/Class/DeploymentHandler.pm index fc2ebad..f9b11fe 100644 --- a/lib/DBIx/Class/DeploymentHandler.pm +++ b/lib/DBIx/Class/DeploymentHandler.pm @@ -188,18 +188,17 @@ Now you should be able to use C like normal! =head1 LOGGING This is a complex tool, and because of that sometimes you'll want to see -what exactly is happening. The best way to do that is to use the built -in logging functionality. Currently three of the standard five log levels -are used; C, C, and C. Info will typically just print -out when methods that actually change things along with the most important -args to the method. Debug will give you a little bit more information, -for example debug will currently tell you which files are being run when -a migration is being called. Trace of course goes even further. It will -actually give you the SQL or Perl code being executed when a migration is run. - -To enable the various logging levels all you need to do is set some environment -variables: C, C, and C. Each level -can be set on it's own, so you can turn on trace without turning on info. +what exactly is happening. The best way to do that is to use the built in +logging functionality. It the standard six log levels; C, C, +C, C, C, and C. Most of those are pretty self +explanatory. Generally a safe level to see what all is going on is debug, +which will give you everything except for the exact SQL being run. + +To enable the various logging levels all you need to do is set an environment +variables: C, C, C, C, +C, and C. Each level can be set on it's own, +but the default is the first three on and the last three off, and the levels +cascade, so if you turn on trace the rest will turn on automatically. Lastly, the logging uses L, so if you have already set up an application-wide logger this will use that logger instead, and the environment diff --git a/lib/DBIx/Class/DeploymentHandler/Dad.pm b/lib/DBIx/Class/DeploymentHandler/Dad.pm index c5523f8..093904e 100644 --- a/lib/DBIx/Class/DeploymentHandler/Dad.pm +++ b/lib/DBIx/Class/DeploymentHandler/Dad.pm @@ -6,10 +6,11 @@ use Moose; use Method::Signatures::Simple; require DBIx::Class::Schema; # loaded for type constraint use Carp::Clan '^DBIx::Class::DeploymentHandler'; -use Log::Contextual::WarnLogger; -use Log::Contextual ':log', -default_logger => Log::Contextual::WarnLogger->new({ - env_prefix => 'DBICDH' -}); +use DBIx::Class::DeploymentHandler::Logger; +use Log::Contextual ':log', -default_logger => + DBIx::Class::DeploymentHandler::Logger->new({ + env_prefix => 'DBICDH' + }); has schema => ( isa => 'DBIx::Class::Schema', @@ -57,7 +58,7 @@ sub upgrade { my $self = shift; while ( my $version_list = $self->next_version_set ) { my ($ddl, $upgrade_sql) = @{ - $self->upgrade_single_step({ version_set => $version_list }) + $self->upgrade_single_step({ version_set => $version_list }) ||[]}; $self->add_database_version({ diff --git a/lib/DBIx/Class/DeploymentHandler/DeployMethod/SQL/Translator.pm b/lib/DBIx/Class/DeploymentHandler/DeployMethod/SQL/Translator.pm index fb0f47b..b6e78a3 100644 --- a/lib/DBIx/Class/DeploymentHandler/DeployMethod/SQL/Translator.pm +++ b/lib/DBIx/Class/DeploymentHandler/DeployMethod/SQL/Translator.pm @@ -5,10 +5,11 @@ use Moose; use autodie; use Carp qw( carp croak ); -use Log::Contextual::WarnLogger; -use Log::Contextual qw(:log :dlog), -default_logger => Log::Contextual::WarnLogger->new({ - env_prefix => 'DBICDH' -}); +use DBIx::Class::DeploymentHandler::Logger; +use Log::Contextual qw(:log :dlog), -default_logger => + DBIx::Class::DeploymentHandler::Logger->new({ + env_prefix => 'DBICDH' + }); use Method::Signatures::Simple; use Try::Tiny; diff --git a/lib/DBIx/Class/DeploymentHandler/VersionStorage/Deprecated.pm b/lib/DBIx/Class/DeploymentHandler/VersionStorage/Deprecated.pm index 31471a8..ca17fbc 100644 --- a/lib/DBIx/Class/DeploymentHandler/VersionStorage/Deprecated.pm +++ b/lib/DBIx/Class/DeploymentHandler/VersionStorage/Deprecated.pm @@ -1,9 +1,10 @@ package DBIx::Class::DeploymentHandler::VersionStorage::Deprecated; use Moose; -use Log::Contextual::WarnLogger; -use Log::Contextual ':log', -default_logger => Log::Contextual::WarnLogger->new({ - env_prefix => 'DBICDH' -}); +use DBIx::Class::DeploymentHandler::Logger; +use Log::Contextual ':log', -default_logger => + DBIx::Class::DeploymentHandler::Logger->new({ + env_prefix => 'DBICDH' + }); # ABSTRACT: (DEPRECATED) Use this if you are stuck in the past diff --git a/lib/DBIx/Class/DeploymentHandler/VersionStorage/Standard.pm b/lib/DBIx/Class/DeploymentHandler/VersionStorage/Standard.pm index ca6a606..bfc4307 100644 --- a/lib/DBIx/Class/DeploymentHandler/VersionStorage/Standard.pm +++ b/lib/DBIx/Class/DeploymentHandler/VersionStorage/Standard.pm @@ -1,9 +1,10 @@ package DBIx::Class::DeploymentHandler::VersionStorage::Standard; use Moose; -use Log::Contextual::WarnLogger; -use Log::Contextual ':log', -default_logger => Log::Contextual::WarnLogger->new({ - env_prefix => 'DBICDH' -}); +use DBIx::Class::DeploymentHandler::Logger; +use Log::Contextual ':log', -default_logger => + DBIx::Class::DeploymentHandler::Logger->new({ + env_prefix => 'DBICDH' + }); # ABSTRACT: Version storage that does the normal stuff