下面由laravel教程欄目給大家介紹將 Laravel 的日志推到 kafka的方法,希望對需要的朋友有所幫助!
Laravel Kafka Logger
使用擴展包 Laravel 將 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"
開始使用
return?[ ????'channels'?=>?[ ????????//?... ????????'kafka'?=>?Hhxsv5LKLKafkaLogger::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 是異步寫入,性能更高。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END