Appender::RRDs(3)

πŸŽ€ Appender::RRDs β€” the perl manpage, but make it cute

okay so bestie, this is the manual page for Appender::RRDs(3), a User Contributed Perl Documentation situation, and it's genuinely such a slay little module. it lets Log4perl write numbers straight into an RRDtool round-robin archive. log to a graph. iconic behavior honestly. πŸ’…


✨ NAME ✨

Log::Log4perl::Appender::RRDs β€” Log to a RRDtool Archive πŸ¦‹

🌸 SYNOPSIS 🌸

like, here's the whole vibe in one go:

use Log::Log4perl qw(get_logger);
use RRDs;

my $DB = "myrrddb.dat";

RRDs::create(
  $DB, "--step=1",
  "DS:myvalue:GAUGE:2:U:U",
  "RRA:MAX:0.5:1:120");

print time(), "\n";

Log::Log4perl->init(\qq{
  log4perl.category = INFO, RRDapp
  log4perl.appender.RRDapp = Log::Log4perl::Appender::RRDs
  log4perl.appender.RRDapp.dbname = $DB
  log4perl.appender.RRDapp.layout = Log::Log4perl::Layout::PatternLayout
  log4perl.appender.RRDapp.layout.ConversionPattern = N:%m
});

my $logger = get_logger();

for(10, 15, 20, 25) {
    $logger->info($_);
    sleep 1;
}

no cap, that's the entire flow: make the db, point the appender at it, log some numbers, done. 🫢


🌈 DESCRIPTION 🌈

so "Log::Log4perl::Appender::RRDs" appenders facilitate writing data to RRDtool round-robin archives via Log4perl. that's the whole gig. πŸ’–

want the docs on RRD itself and its Perl interface "RRDs" (which comes with the distribution, cute of it)? go look at http://rrdtool.org. main character documentation energy.

messages you send to Log4perl's RRDs appender are expected to be numerical values (ints or floats, bestie β€” not your feelings, not a string, numbers). those then get used to run a "rrdtool update" command on an existing round-robin database. and yes, that db has to already exist. the name of this database needs to be set in the appender's "dbname" configuration parameter. no dbname, no vibes.

if there's more parameters you wish to pass to the "update" method, use the "rrdupd_params" configuration parameter, like so:

log4perl.appender.RRDapp.rrdupd_params = --template=in:out

to read out the round robin database later on, use "rrdtool fetch" or "rrdtool graph" for graphic displays. ✨ fetch it, graph it, put it on your story.


πŸ‘‘ LICENSE πŸ‘‘

Copyright 2002-2026 by Mike Schilli <m@perlmeister.com> and Kevin Goess <cpan@goess.org>.

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


fr fr, keep those copyright lines intact β€” they're the whole reason this module got to be legendary in the first place πŸ’œ

okay that's the page!! this was generated from perl v5.42.2, dated 2026-08-14, for Appender::RRDs(3) β€” go forth and log your little numbers, bestie πŸ“πŸ§šπŸ’–

πŸ“¦ where this page comes from