Fluentd
Search…
Perl
The Fluent::Logger library is used to post records from Perl applications to Fluentd.
This article explains how to use it.

Prerequisites

  • Basic knowledge of Perl
  • Basic knowledge of Fluentd
  • Perl 5.10 or higher

Installing Fluentd

Please refer to the following documents to install fluentd:

Modifying the Config File

Configure Fluentd to use the forward input plugin as its data source:
1
<source>
2
@type forward
3
port 24224
4
</source>
5
<match fluentd.test.**>
6
@type stdout
7
</match>
Copied!
Restart agent after configuring.
1
# for rpm/deb only
2
$ sudo /etc/init.d/td-agent restart
3
4
# or systemd
5
$ sudo systemctl restart td-agent.service
Copied!

Using Fluent::Logger

Install Fluent::Logger library via CPAN:
1
$ cpan
2
cpan[1]> install Fluent::Logger
Copied!
Create a script to post the records:
1
# test.pl
2
use Fluent::Logger;
3
my $logger = Fluent::Logger->new(
4
host => '127.0.0.1',
5
port => 24224,
6
tag_prefix => 'fluentd.test',
7
);
8
$logger->post("follow", { "entry1" => "value1", "entry2" => 2 });
Copied!
Executing the script will send the logs to Fluentd:
1
$ perl test.pl
Copied!
The logs should be output to /var/log/td-agent/td-agent.log or the standard output of the Fluentd process via stdout output plugin.

Production Deployments

Output Plugins

Various output plugins are available for writing records to other destinations:

High-Availability Configurations of Fluentd

For high-traffic websites (more than 5 application nodes), we recommend using the high-availability configuration for td-agent. This will improve the reliability of data transfer and query performance.

Monitoring

Monitoring Fluentd itself is also important. The article below describes the general monitoring methods for td-agent.
If this article is incorrect or outdated, or omits critical information, please let us know. Fluentd is an open-source project under Cloud Native Computing Foundation (CNCF). All components are available under the Apache 2 License.
Last modified 7mo ago