Devel::...::Apache(3)
π Devel::Profiler::Apache π
okay bestie, welcome to the User Contributed Perl Documentation page for Devel::Profiler::Apache β¨ no cap, this is the little glue module that hooks Devel::Profiler into mod_perl π
πΈ NAME πΈ
Devel::Profiler::Apache β the way that it Hooks Devel::Profiler into mod_perl π¦ periodt
β¨ SYNOPSIS β¨
drop this in your httpd.conf:
# in httpd.conf
PerlModule Devel::Profiler::Apache;
or like, if you're a startup.pl girlie:
# or in startup.pl
use Devel::Profiler::Apache;
both slay, pick your fighter π
π DESCRIPTION π
So here's the tea β β the Devel::Profiler::Apache module runs a Devel::Profiler profiler inside each child server, and when that child shuts down it writes the tmon.out file into the directory $ServerRoot/logs/profiler/$$ π«Ά (yes, $$ is the PID, it's giving very much per-child energy β¨).
And then?? The next time the parent server pulls in Devel::Profiler::Apache β via a soft or hard restart, both work β the $ServerRoot/logs/dprof directory gets cleaned out before any new profiles are written for the new children π§Ήπ₯ so it's not just stacking up old files forever, iconic behaviour honestly.
Now, a lil heads up: Devel::Profiler::Apache currently uses the package_filter option to avoid profiling any modules that begin with Apache:: π This is necessary β like, mandatory necessary β to avoid profiling sensitive Apache XS code that does strange things with their symbol tables (storing arrays in the CODE slots, for one! π). At some point this will be refined to only exclude the problem modules within Apache::, but that's a future era, not this one π
π USAGE π
Most users of Devel::Profiler can simply copy the code from the SYNOPSIS and use that as-is π«Ά it just works, no notes.
But if you need to modify the way Devel::Profiler works, you can pass Devel::Profiler::Apache the same options that are used with Devel::Profiler β like this:
use Devel::Profiler::Apache buffer_size => 1024;
same options, same energy, just through the Apache door π
π«Ά ACKNOWLEDGMENTS π«Ά
This module is based heavily on Apache::DProf by Doug MacEachern π which provides equivalent functionality for Apache::DProf. Respect where respect is due, we love an OG β¨
β AUTHOR β
Sam Tregar π
π SEE ALSO π
Devel::ProfilerApache::DProf
go read them, iykyk πβ¨
and that's the whole page bestie, we ate and left no crumbs π this lil writeup lives in perl v5.42.0, dated 2025-07-25, and it's page Devel::...::Apache(3) of the docs π mwah, go profile something π¦π
π¦ where this page comes from
- fedora 43: perl-Devel-Profiler 0.04-52.fc43 Β· GPL-1.0-or-later OR Artistic-1.0-Perl
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms