这篇文章将为大家详细讲解有关如何将Laravel的日志推到Kafka,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
创新互联公司长期为近1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为兴隆台企业提供专业的成都网站建设、做网站,兴隆台网站改版等技术服务。拥有10余年丰富建站经验和众多成功案例,为您定制开发。使用扩展包 laravel-kafka-logger 将 Laravel 的日志推到 Kafka,然后由 ELK 消费、存储、呈现。
依赖 | 要求 |
---|---|
php-rdkafka | >=4.0.0 |
1.安装rdkafka
git clone --depth 1 https://github.com/edenhill/librdkafka.git /tmp/librdkafka && cd /tmp/librdkafka && ./configure && make -j$(nproc) && make install && rm -rf /tmp/librdkafka pecl install rdkafka
2.安装laravel-kafka-logger
# Laravel 5.x composer require "hhxsv5/laravel-kafka-logger:~1.0.0" # Laravel 6.x & 7.x composer require "hhxsv5/laravel-kafka-logger:~2.0.0"
1.修改配置文件config/logging.php
return [ 'channels' => [ // ... 'kafka' => Hhxsv5\LKL\KafkaLogger::getDefinition(['topic' => env('LOG_KAFKA_TOPIC', 'laravel-logs')]), ], ];
2.修改.env
LOG_CHANNEL=kafka LOG_KAFKA_BROKER_LIST=kafka:9092 LOG_KAFKA_TOPIC=laravel-logs
3.好了,开始记日志
Log::info('用户登录', ['uid-hhxsv5']);
注:
在什么情况下才需要使用到 kafka 来做日志存储?
一是便于集中收集日志,不必每台机器装个客户端收集日志;
二是 Kafka 是异步写入,性能更高。
关于“如何将Laravel的日志推到Kafka”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。