1 package DBIx::Class::Storage::Statistics;
4 use base qw/DBIx::Class::AccessorGroup Class::Data::Accessor/;
5 __PACKAGE__->mk_group_accessors(simple => qw/callback debugfh/);
9 DBIx::Class::Storage::Statistics - SQL Statistics
15 This class is called by DBIx::Class::Storage::DBI as a means of collecting
16 statistics on it's actions. Using this class alone merely prints the SQL
17 executed, the fact that it completes and begin/end notification for
20 To really use this class you should subclass it and create your own method
21 for collecting the statistics as discussed in L<DBIx::Class::Manual::Cookbook>.
29 Returns a new L<DBIx::Class::Storage::Statistics> object.
33 my $self = bless({}, ref($_[0]) || $_[0]);
40 Sets or retrieves the filehandle used for trace/debug output. This should
41 be an IO::Handle compatible object (only the C<print> method is used). Initially
42 should be set to STDERR - although see information on the
43 L<DBIX_CLASS_STORAGE_DBI_DEBUG> environment variable.
47 Called when a transaction begins.
56 Called when a transaction is rolled back.
65 Called when a transaction is committed.
74 Called before a query is executed. The first argument is the SQL string being
75 executed and subsequent arguments are the parameters used for the query.
82 if(defined($self->callback())) {
84 $self->callback()->($1, $string);
88 $self->debugfh->print("$string: " . join(', ', @_) . "\n");
93 Called when a query finishes executing. Has the same arguments as query_start.
105 Cory G. Watson <gphat@cpan.org>
109 You may distribute this code under the same license as Perl itself.