Lumen日志接入 Elasticsearch

日志分析系统的安装请看部署章节,安装elasticsearch组件

composer require elasticsearch/elasticsearch

修改config/logging.php添加一个elasticsearch配置

'elasticsearch' => [
    'driver' => 'monolog',
    'handler' => Monolog\Handler\ElasticsearchHandler::class,
    'with' => [
        'client' => \Elasticsearch\ClientBuilder::create()
                ->setHosts(explode(',', env('ELASTIC_HOST')))
                ->build(),
        'options' => [
            'index' => 'storage-log', // Elastic index name
            'type' => '_doc', // Elastic document type
            'ignore_error' => false, // Suppress Elasticsearch exceptions
        ],
    ],
    'formatter' => Monolog\Formatter\ElasticsearchFormatter::class,
    'formatter_with' => [
        'index' => 'storage-log',
        'type' => '_doc',
    ],
],

bootstrap/app.php 加载该配置

$app->configure('logging');

.env 文件修改

LOG_CHANNEL=elasticsearch
ELASTIC_HOST=es01:9200

《PHP微服务练兵》系列索引博客:《PHP 微服务练兵》系列教程

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 1

这样是逐条日志同步写入,要异步处理可以看这里:博客:Laravel 使用 Elasticsearch 作为日志存储

4年前 评论
Donjan (楼主) 4年前
pan_zoe 4年前
GeorgeKing (作者) 4年前
Donjan (楼主) 4年前
pan_zoe 4年前
pan_zoe 4年前
Donjan (楼主) 4年前
pan_zoe 4年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!