weijukeji/laravel-openobserve 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

weijukeji/laravel-openobserve

最新稳定版本:v0.2.0

Composer 安装命令:

composer require weijukeji/laravel-openobserve

包简介

Laravel package for OpenObserve integration - centralized log management and monitoring

README 文档

README

Tests Latest Version on Packagist Total Downloads

A Laravel package for integrating with OpenObserve. Send your logs to OpenObserve for centralized log management and monitoring.

한국어 문서

Features

  • Seamless integration with Laravel's logging system
  • Efficient log transmission via batch processing
  • Configurable additional fields on all log entries
  • Direct API access through Facade
  • Automatic exception information capture (class, message, code, file, line, trace)
  • Artisan command for connection testing

Requirements

  • PHP 8.3+
  • Laravel 11.x, 12.x, or 13.x

Installation

Install the package via Composer:

composer require weijukeji/laravel-openobserve

Publish the configuration file:

php artisan vendor:publish --tag=openobserve-config

Configuration

Add OpenObserve connection details to your .env file:

OPENOBSERVE_ENABLED=true
OPENOBSERVE_URL=http://localhost:5080
OPENOBSERVE_ORGANIZATION=default
OPENOBSERVE_STREAM=laravel-logs
OPENOBSERVE_EMAIL=your-email@example.com
OPENOBSERVE_PASSWORD=your-password

All Configuration Options

Option Env Variable Default
enabled OPENOBSERVE_ENABLED false
url OPENOBSERVE_URL http://localhost:5080
organization OPENOBSERVE_ORGANIZATION default
stream OPENOBSERVE_STREAM default
auth.email OPENOBSERVE_EMAIL -
auth.password OPENOBSERVE_PASSWORD -
batch_size OPENOBSERVE_BATCH_SIZE 100
timeout OPENOBSERVE_TIMEOUT 5
ssl_verify OPENOBSERVE_SSL_VERIFY true
additional_fields APP_ENV, APP_NAME ['environment', 'application']

Laravel Logging Channel Setup

Add the OpenObserve channel to your config/logging.php:

'channels' => [
    // ... existing channels

    'openobserve' => [
        'driver' => 'custom',
        'via' => \Weijukeji\LaravelOpenObserve\Logging\OpenObserveLogger::class,
        'level' => env('LOG_LEVEL', 'debug'),
        'name' => 'openobserve',
    ],

    // Optionally add openobserve to a stack channel
    'stack' => [
        'driver' => 'stack',
        'channels' => ['single', 'openobserve'],
        'ignore_exceptions' => false,
    ],
],

Set the default log channel in your .env file:

LOG_CHANNEL=stack  # or 'openobserve'

Usage

Laravel Logging

Use it just like standard Laravel logging:

use Illuminate\Support\Facades\Log;

Log::info('User logged in', ['user_id' => 123]);
Log::error('An error occurred', ['error' => $exception->getMessage()]);
Log::warning('Warning message');
Log::debug('Debug information', ['data' => $debugData]);

Direct Usage via Facade

Access the OpenObserve client directly through the Facade:

use Weijukeji\LaravelOpenObserve\Facades\OpenObserve;

// Send a single log entry
OpenObserve::send([
    'level' => 'info',
    'message' => 'User action',
    'user_id' => 123,
    'action' => 'purchase',
]);

// Add to batch (automatically sent when batch size is reached)
OpenObserve::addToBatch([
    'level' => 'info',
    'message' => 'Event occurred',
]);

// Manually flush the batch
OpenObserve::flush();

Dependency Injection

use Weijukeji\LaravelOpenObserve\OpenObserveClient;

class SomeController extends Controller
{
    public function __construct(
        private OpenObserveClient $openObserve
    ) {}

    public function index()
    {
        $this->openObserve->send([
            'level' => 'info',
            'message' => 'Controller executed',
            'controller' => self::class,
        ]);
    }
}

Connection Test

Test the connection to OpenObserve using the Artisan command:

php artisan openobserve:test

This will display your configuration and send a test log entry to verify connectivity.

Testing

composer test

Security Vulnerabilities

If you discover a security vulnerability, please email urlinee@gmail.com.

License

The MIT License (MIT). Please see License File for more information.

Credits

统计信息

  • 总下载量: 10
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 4
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-02-28

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固