NAME

DBIC::Violator - Violate DBIC's most private moments

SYNOPSIS

use DBIC::Violator
  application_name => "Some app name V1.234",
  username_from_res_header => 'X-RapidApp-Authenticated';

...

use DBIC::Violator::Plack::Middleware;
use Plack::Builder;

builder {
  enable '+DBIC::Violator::Plack::Middleware';
  $psgi_app
};

DESCRIPTION

EXPERIMENTAL - not ready for production use

This is module "violates" DBIx::Class by tracking all queries and logging them to an SQLite database. It does not do this in a "nice" or correct way, hence the tongue-in-cheek name. It does not use the already provided debugobj API; instead it wraps method modifiers on DBIC global storage classes in order to intercept all DBIC-originated queries process-wide.

The Plack middleware DBIC::Violator::Plack::Middleware is also provided which can be used in Plack apps to track and link all DBIC queries and associate them with a parent HTTP request.

This module exists for some specific uses and may not ever be supported and so you probably shouldn't use it. Full documentation maybe TBD.

CONFIGURATION

METHODS

SEE ALSO

AUTHOR

Henry Van Styn <vanstyn@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2021 by IntelliTree Solutions llc.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.