此包已被废弃且不再维护。未建议替代包。

提供后端以将日志条目写入数据库,以及一个将日志条目与账户以及可选的来自党派框架的党派关联的记录器。

v0.1.0 2015-03-04 01:15 UTC

This package is auto-updated.

Last update: 2022-08-22 22:22:10 UTC


README

Build Status

De.SWebhosting.DatabaseLog

这是一个Flow框架包,为您带来一些日志功能

  1. 您可以将日志消息存储在数据库中。
  2. 您可以使用存储库搜索日志条目。
  3. 您可以在日志条目中存储账户/用户信息并对其进行过滤。

安装

如果您想使用此包,只需将一个require语句添加到您的composer.json文件中

{
    "require": {
        "de-swebhosting-flow-package/databaselog": "~6.1"
    }
}

提示! 此包仅与TYPO3 Flow版本6.1进行了测试。如果您遇到旧版本的麻烦,请创建一个问题。

如何使用它

数据库后端

有两种方法可以使用数据库后端进行日志记录。

在您的对象中注入 databaseLogger

此包附带一个名为databaseLogger的预配置PSR日志标识符。此记录器 将日志记录到数据库。

您可以通过在Objects.yaml中添加相关配置来注入它

My\Vendor\My\Class:
  properties:
    logger:
      object:
        factoryObjectName: Neos\Flow\Log\PsrLoggerFactoryInterface
        factoryMethodName: get
        arguments:
          1:
            value: databaseLogger

使用此配置,您的类中的$logger属性将使用databseLogger日志。

在现有记录器中配置后端

您还可以将数据库记录器作为附加后端添加到现有日志中或通过调整Settings.yaml中的配置替换默认后端

这覆盖了i18nLogger后端与数据库后端。

Neos:
  Flow:
    log:
      psr3:
        'Neos\Flow\Log\PsrLoggerFactory':
          i18nLogger:
            default:
              class: De\SWebhosting\DatabaseLog\Log\DatabaseBackend
              options:
                severityThreshold: '%LOG_INFO%'
                logIpAddress: true

要将其作为附加后端添加,请使用不同于default的另一个键

Neos:
  Flow:
    log:
      psr3:
        'Neos\Flow\Log\PsrLoggerFactory':
          i18nLogger:
            database:
              class: De\SWebhosting\DatabaseLog\Log\DatabaseBackend
              options:
                severityThreshold: '%LOG_INFO%'
                logIpAddress: true

日志存储库

您可以使用\De\SWebhosting\DatabaseLog\Domain\Repository\LogEntryRepository像其他Flow存储库一样搜索日志条目。将其注入到您的类中并开始查询。

目前它附带了一些基本的查询方法。如果您需要更多,请告诉我。

账户操作记录器

此包的一个特殊功能是账户操作记录器。它允许您存储与账户或党派(如果已安装党派框架)关联的日志条目。

账户通过名为De.SWebhosting.DatabaseLog.Account的参数传递到日志后端的额外数据数组中。如果使用常规后端,此参数将简单地作为可读的var dump存储。

如果使用此包的DatabaseBackend,则参数将被解析,账户标识符和身份验证提供者名称将存储在日志条目模型属性中。这允许您筛选特定账户的日志消息。

如果已安装党派框架且一个党派连接到提供的账户,用户的对象标识符和全名也将存储在数据库中。