flowpack/monolog 问题修复 & 功能扩展

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

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

flowpack/monolog

Composer 安装命令:

composer require flowpack/monolog

包简介

Monolog integration for Flow

README 文档

README

Provides a monolog factory to be used with Flow.

This package replaces all Neos Flow logs (Security, System, Query, I18n) with Monolog by default. To change that and the handlers check the Settings.yaml. See also configuration notes below.

👻

The monolog format is slightly different than the default Flow log file format, also the configured monolog handler does no log rotation like the Flow log does, so you need to take care of that.

Installation

Use composer to install this package:

composer require flowpack/monolog

All Framework logs should now be in monolog format and you need to add configuration for any other logs you might want.

Configuration

You have several ways to configure monolog with this package, the easiest is seen in the configuration for the Neos Flow logs in this package:

Neos:
  Flow:
    log:
      psr3:
        'Flowpack\Monolog\LoggerFactory':
          # name of the logger as Flow addresses it, eg. "systemLogger"
          '<name of the logger>':
            handler:
              # unique name for this handler in this log, for extending the configuration
              '<identifier for this handler>':
                className: '<monolog compatible handler class name fully qualified>'
                # sorting for this handler if you want it deterministic with overwrites
                position: 100
                # arguments given to the handler, zero index based, as the handler constructor expects them
                arguments:
                  0: '<the first argument given to the constructor of the handler>'
              # another handler could follow here

Another option is to create preset handlers, e.g. if you need to use the same handler with the same configuration in multiple places, no overrides of this default configuration is possible at this time:

Flowpack:
  Monolog:
    handler:
      # unique identifier of this handler (preset)
      '<presetName>':
        className: '<monolog compatible handler class name fully qualified>'
        # note that preset handlers currently cannot have a position, they are sorted as configured
        # arguments given to the handler, zero index based, as the handler constructor expects them
        arguments:
            0: '<the first argument given to the constructor of the handler>'

Neos:
  Flow:
    log:
      psr3:
        'Flowpack\Monolog\LoggerFactory':
          # name of the logger as Flow addresses it
          '<name of the logger>':
            handler:
              # the presetName should be the same as in above preset configuration
              '<identifier for this handler>': '<presetName>'

⚠️ Note that using presets does not work for loggers needed early in the bootstrap, as the settings for the Flowpack.Monolog package itself are injected rather late and the preset is only available afterwards.

Handlers

For more information about handlers and their configuration check also the monolog documentation on handlers, formatters & processors.

Formatters

To add a formatter to a handler, configure it like this:

Neos:
  Flow:
    log:
      psr3:
        'Flowpack\Monolog\LoggerFactory':
          '<name of the logger>':
            handler:
              '<identifier for this handler>':
                className: '<monolog compatible handler class name fully qualified>'
                arguments:
                  0: '<the first argument given to the constructor of the handler>'
                # any formatter compatible with monolog
                formatterClassName: '<monolog compatible formatter class name fully qualified>'
                # optional arguments for the formatter
                formatterArguments:
                  0: '<the first argument given to the constructor of the formatter>'

For this to work the used handler must implement monolog's FormattableHandlerInterface.

For more information about formatters and their configuration check also the monolog documentation on handlers, formatters & processors.

flowpack/monolog 适用场景与选型建议

flowpack/monolog 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 27.18k 次下载、GitHub Stars 达 0, 最近一次更新时间为 2015 年 07 月 13 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 flowpack/monolog 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 flowpack/monolog 我们能提供哪些服务?
定制开发 / 二次开发

基于 flowpack/monolog 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: Unknown
  • 更新时间: 2015-07-13