1.0.0 2025-05-29 07:53 UTC

This package is auto-updated.

Last update: 2025-06-02 08:48:24 UTC


README

安装仓库

composer require alone-webman/log

查看最新二条记录

php webman alone:log 2

为当前连接创建表单(app.php默认sqlite)

php webman alone:log-sql

查询方法

alone_log_table()->get()->toArray();

sqlite

CREATE TABLE "alone_log_record"
(
    "id"      INTEGER PRIMARY KEY AUTOINCREMENT,
    "app"     TEXT,
    "name"    TEXT,
    "push"    INTEGER NOT NULL,
    "uuid"    TEXT,
    "ip"      TEXT,
    "date"    TEXT,
    "url"     TEXT,
    "method"  TEXT,
    "domain"  TEXT,
    "uri"     TEXT,
    "path"    TEXT,
    "get"     TEXT,
    "post"    TEXT,
    "buffer"  TEXT,
    "head"    TEXT,
    "cookie"  TEXT,
    "browser" TEXT,
    "referer" TEXT,
    "status"  TEXT,
    "header"  TEXT,
    "code"    TEXT,
    "body"    TEXT,
    "error"   TEXT,
    "time"    TEXT,
    "info"    TEXT,
    "update"  TEXT
);

mysql

SET NAMES utf8mb4;
SET
FOREIGN_KEY_CHECKS = 0;
DROP TABLE IF EXISTS `alone_log_record`;
CREATE TABLE `alone_log_record`
(
    `id`      bigint unsigned NOT NULL AUTO_INCREMENT,
    `app`     varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci  DEFAULT NULL COMMENT '项目名称',
    `name`    varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci  DEFAULT NULL COMMENT '应用名称',
    `push`    tinyint                                                       DEFAULT '0' COMMENT '是否推送',
    `uuid`    varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '会话标识',
    `ip`      varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '请求IP',
    `date`    datetime                                                      DEFAULT NULL COMMENT '请求时间',
    `url`     text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '完整url',
    `method`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci  DEFAULT NULL COMMENT '请求方法',
    `domain`  text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '请求域名',
    `uri`     text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '完整url',
    `path`    text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '请求路径',
    `get`     json                                                          DEFAULT NULL COMMENT '请求参数',
    `post`    json                                                          DEFAULT NULL COMMENT '请求参数',
    `buffer`  longtext COLLATE utf8mb4_unicode_ci COMMENT '请求参数',
    `head`    json                                                          DEFAULT NULL COMMENT '请求头',
    `cookie`  json                                                          DEFAULT NULL COMMENT '请求cookie',
    `browser` json                                                          DEFAULT NULL COMMENT '浏览器信息',
    `referer` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '请求来路',
    `status`  varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci  DEFAULT 'loader' COMMENT '请求状态',
    `header`  json                                                          DEFAULT NULL COMMENT '响应头部',
    `code`    int                                                           DEFAULT '0' COMMENT '响应状态',
    `body`    longtext COLLATE utf8mb4_unicode_ci COMMENT '响应内容',
    `error`   json                                                          DEFAULT NULL COMMENT '出错信息',
    `time`    decimal(16, 6)                                                DEFAULT NULL COMMENT '响应时间',
    `update`  datetime                                                      DEFAULT NULL COMMENT '更新时间',
    `info`    json                                                          DEFAULT NULL COMMENT '其他信息',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='请求日志表';
BEGIN;
COMMIT;
SET
FOREIGN_KEY_CHECKS = 1;
 return [
            //项目名称
            'app'     => $app,
            //应用名称
            'name'    => $name,
            //是否推送
            'push'    => 0,
            //会话标识
            'uuid'    => $uuid,
            //请求IP
            'ip'      => $request->getRealIp(),
            //请求时间
            'date'    => date("Y-m-d H:i:s"),
            //完整url
            'url'     => $request->fullUrl(),
            //请求方法
            'method'  => $request->method(),
            //请求域名
            'domain'  => $request->host(),
            //完整url
            'uri'     => $request->uri(),
            //请求路径
            'path'    => $request->path(),
            //请求参数GET
            'get'     => $request->get(),
            //请求参数POST
            'post'    => $request->post(),
            //请求包体
            'buffer'  => $request->rawBody(),
            //请求头
            'head'    => $request->header(),
            //请求cookie
            'cookie'  => $request->cookie(),
            //浏览器信息
            'browser' => [],
            //请求来路
            'referer' => $request->header('referer', $request->header('origin')),
            //请求状态
            'status'  => 'loader',
            //响应头部
            'header'  => [],
            //响应状态码
            'code'    => 0,
            //响应内容
            'body'    => null,
            //出错信息
            'error'   => null,
            //响应时间
            'time'    => microtime(true),
            //更新时间
            'update'  => date("Y-m-d H:i:s"),
            //其他信息
            'info'    => []
        ];