這篇文章將為大家詳細(xì)講解有關(guān)如何將Laravel的日志推到Kafka,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
創(chuàng)新互聯(lián)公司專業(yè)為企事業(yè)單位提供成都網(wǎng)站建設(shè)公司、成都網(wǎng)站設(shè)計(jì),網(wǎng)站優(yōu)化、微信開發(fā)、手機(jī)網(wǎng)站建設(shè)、國(guó)際域名空間、網(wǎng)站空間、企業(yè)郵箱等互聯(lián)網(wǎng)基礎(chǔ)服務(wù)。2013年至今,我們先后簽約近千家中小型企業(yè)和科技發(fā)展公司的網(wǎng)站建設(shè)和網(wǎng)站推廣項(xiàng)目。通過多年的創(chuàng)新發(fā)展,已發(fā)展成為專業(yè)能力較強(qiáng),服務(wù)較好的建站公司。
使用擴(kuò)展包 laravel-kafka-logger 將 Laravel 的日志推到 Kafka,然后由 ELK 消費(fèi)、存儲(chǔ)、呈現(xiàn)。
依賴 | 要求 |
---|---|
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 來做日志存儲(chǔ)?
一是便于集中收集日志,不必每臺(tái)機(jī)器裝個(gè)客戶端收集日志;
二是 Kafka 是異步寫入,性能更高。
關(guān)于“如何將Laravel的日志推到Kafka”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。