PHPackages                             ezijing/hyperf-annotated-log - 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. ezijing/hyperf-annotated-log

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

ezijing/hyperf-annotated-log
============================

hyperf 注解日志

v1.1.9(4y ago)0497MITPHPPHP &gt;=7.2

Since Dec 8Pushed 4y ago1 watchersCompare

[ Source](https://github.com/wojiushidashen/hyperf-annotated-log)[ Packagist](https://packagist.org/packages/ezijing/hyperf-annotated-log)[ Docs](https://github.com/wojiushidashen/hyperf-annotated-log)[ RSS](/packages/ezijing-hyperf-annotated-log/feed)WikiDiscussions main Synced 4w ago

READMEChangelog (8)Dependencies (15)Versions (11)Used By (0)

hyperf 注解日志
===========

[](#hyperf-注解日志)

> 注意：当前日志的数据存储只支持mysql

使用说明
----

[](#使用说明)

### 1. 先下载composer包

[](#1-先下载composer包)

```
composer require ezijing/hyperf-annotated-log -vvv

```

发布

```
 php bin/hyperf.php vendor:publish ezijing/hyperf-annotated-log
```

### 2. 执行数据库脚本

[](#2-执行数据库脚本)

1. 脚本路径

> ./vendor/ezijing/hyperf-annotated-log/db/log.sql

```
CREATE TABLE `s_logs` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键id',
  `ip` varchar(50) NOT NULL DEFAULT '' COMMENT 'ip地址',
  `operate` varchar(255) NOT NULL DEFAULT '' COMMENT '操作说明',
  `desc` text NOT NULL COMMENT '操作内容',
  `operator` varchar(50) NOT NULL DEFAULT '' COMMENT '操作者',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_ip` (`ip`),
  KEY `idx_operate` (`operate`),
  KEY `idx_operator` (`operator`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='操作日志表';
```

### 3. 配置操作用户

[](#3-配置操作用户)

用户登录成功获取用户信息后进行设置

```
return [
    // 配置操作者的ID
    // 登录用户信息存储在 Context下
    'user' => [
        'key' => 'user', // context的key
        'id' => 'id', // 用户的id
    ],
];
```

```
$loginUser = user(); // 获取登录信息伪代码
Context::set('annotation_log.user.key', $loginUser);
```

### 4. 注解操作示例

[](#4-注解操作示例)

#### 4.1 注意：

[](#41-注意)

> 1. 目前只支持控制器中的Action进行注解
> 2. 注解到其他方法中也可以；但无法获取到方法传递的动态参数。

#### 4.2示例：

[](#42示例)

```
