PHPackages                             unrelaxs/eslog-for-laravel - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Logging &amp; Monitoring](/categories/logging)
4. /
5. unrelaxs/eslog-for-laravel

ActiveLibrary[Logging &amp; Monitoring](/categories/logging)

unrelaxs/eslog-for-laravel
==========================

about laravel log to elasticsearch

v0.1.4(6y ago)010PHP

Since Mar 31Pushed 6y ago1 watchersCompare

[ Source](https://github.com/unrelaxs/eslog-for-laravel)[ Packagist](https://packagist.org/packages/unrelaxs/eslog-for-laravel)[ RSS](/packages/unrelaxs-eslog-for-laravel/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (1)Versions (7)Used By (0)

Requirements
------------

[](#requirements)

The package has been tested in the following configuration:

- PHP version &gt;=7.1.3, &lt;=7.3
- Laravel Framework version &gt;=5.8, &lt;=6
- Elasticsearch version &gt;=7

Installation
------------

[](#installation)

Use composer to install the package:

```
composer require unrelaxs/eslog-for-laravel

```

如果你的laravel框架版本 &lt;= 5.4 or [the package discovery](https://laravel.com/docs/5.5/packages#package-discovery)is disabled, add the following providers in `config/app.php`:

```
'providers' => [
    Laravel\Scout\ScoutServiceProvider::class,
    ScoutElastic\ScoutElasticServiceProvider::class,
    Unrelaxs\eslog\EslogServiceProvider::class,
]
```

Configuration
-------------

[](#configuration)

执行发布命令

```
php artisan vendor:publish --provider="Laravel\Scout\ScoutServiceProvider"
php artisan vendor:publish --provider="ScoutElastic\ScoutElasticServiceProvider"
php artisan vendor:publish --provider="Unrelaxs\eslog\EslogServiceProvider"

```

在这个文件添加配置，指定elastic服务器的链接:端口 `.evn`:

```
    SCOUT_DRIVER=elastic #指定使用elastic
    SCOUT_ELASTIC_HOST=http://域名:9200 #es服务器的链接

```

在这个文件修改 `config/logging.php`:

```
    'channels' => [
        'stack' => [
            'driver' => 'stack',
            'channels' => ['custom'],  //这里至少指定 custom
            'ignore_exceptions' => false,
        ],
        'custom'  => [
            'driver' => 'custom',
            'via' => Unrelaxs\Eslog\Log\Handler\CreateEsLogger::class, //指定创建es的logger扩展包
            'url' =>  'http://ip', es的链接
            'port'=> '9200',
            'index'=> 'laralog', //es的索引名
            'toDB' => false, //是否写入数据库
        ]

```

创建一个索引配置文件:

```
php artisan make:index-configurator \\App\\Elasticsearch\\LogIndexConfigurator

```

此步骤可忽略，例如索引配置文件配置LogIndexConfigurator如下

```
    protected $settings = [
            'analysis' => [
                'analyzer' => [
                    'default' => [
                        'type' => 'ik_max_word',  //默认的分词器, 因为我独自安装了中文分析器，如何安装，请参考下面文献
                    ]
                ]
            ]
        ];

```

执行命令 生成一个logModel指向一个索引:

```
php artisan unrelaxs:create-mapping "\App\Elasticsearch\LogIndexConfigurator"

```

执行命令向es服务器创建索引 :

```
php artisan elastic:create-index "\App\Elasticsearch\LogIndexConfigurator"

```

执行命令 把上面执行命令返回model 映射到es服务器:

```
php artisan elastic:update-mapping "\Unrelaxs\Eslog\Model\LogModel"

```

在客户端调用Log::info('你好啊');，如在routes/web.php中这样

```
Route::get('/', function () {
    \Illuminate\Support\Facades\Log::info('成功加载');  //记录日志，将自动把数据推送到es服务器
    return view('welcome');
});

```

去es服务器查看效果吧！

参考文献
----

[](#参考文献)

- [laravel-elastic文档](https://github.com/babenkoivan/scout-elasticsearch-driver)
- [中文分析器安装教程](https://blog.csdn.net/wolfcode_cn/article/details/81907220)

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

6

Last Release

2231d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/24558209?v=4)[unrelaxs](/maintainers/unrelaxs)[@unrelaxs](https://github.com/unrelaxs)

---

Top Contributors

[![unrelaxs](https://avatars.githubusercontent.com/u/24558209?v=4)](https://github.com/unrelaxs "unrelaxs (16 commits)")

### Embed Badge

![Health badge](/badges/unrelaxs-eslog-for-laravel/health.svg)

```
[![Health](https://phpackages.com/badges/unrelaxs-eslog-for-laravel/health.svg)](https://phpackages.com/packages/unrelaxs-eslog-for-laravel)
```

###  Alternatives

[psr/log

Common interface for logging libraries

10.4k1.2B9.2k](/packages/psr-log)[itsgoingd/clockwork

php dev tools in your browser

5.9k27.6M94](/packages/itsgoingd-clockwork)[graylog2/gelf-php

A php implementation to send log-messages to a GELF compatible backend like Graylog2.

41838.2M138](/packages/graylog2-gelf-php)[bugsnag/bugsnag-psr-logger

Official Bugsnag PHP PSR Logger.

32132.5M2](/packages/bugsnag-bugsnag-psr-logger)[consolidation/log

Improved Psr-3 / Psr\\Log logger based on Symfony Console components.

15462.2M7](/packages/consolidation-log)[datadog/php-datadogstatsd

An extremely simple PHP datadogstatsd client

19124.6M15](/packages/datadog-php-datadogstatsd)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
