Fluentd
1.0
Search
K

PHP

The fluent-logger-php library is used to post records from PHP applications to Fluentd.
This article explains how to use it.

Prerequisites

  • Basic knowledge of PHP
  • Basic knowledge of Fluentd
  • PHP 5.6 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:
<source>
@type forward
port 24224
</source>
<match fluentd.test.**>
@type stdout
</match>
Restart agent after configuring.
# for rpm/deb only
$ sudo /etc/init.d/td-agent restart
# or systemd
$ sudo systemctl restart td-agent.service

Using fluent-logger-php

Add 'fluent/logger' package to your composer.json:
{
"require": {
"fluent/logger": "1.0.*"
}
}
Create a php file containing the following code:
<?php
require_once __DIR__.'/vendor/autoload.php';
use Fluent\Logger\FluentLogger;
$logger = new FluentLogger("localhost","24224");
$logger->post("fluentd.test.follow", array("from"=>"userA", "to"=>"userB"));
Executing the script will send the logs to Fluentd:
$ php test.php
The logs should be output to /var/log/td-agent/td-agent.log or the standard output of the Fluentd process via the 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 2yr ago