<?php

// +----------------------------------------------------------------------
// | 日志配置
// +----------------------------------------------------------------------
// | 控制框架日志通道、日志格式、日志保留数量和写入策略。
// | 业务日志中的敏感字段脱敏规则在 config/security.php 的 security.log 下配置。
// +----------------------------------------------------------------------

return [
    // 默认日志通道，可通过 LOG_CHANNEL 环境变量切换。
    'default'      => env('log.channel', 'file'),

    // 全局允许记录的日志级别；空数组表示使用框架默认级别。
    'level'        => [],

    // 按日志类型指定通道，例如 ['error' => 'email']。
    'type_channel' => [],

    // 是否关闭全局日志写入。
    'close'        => false,

    // 全局日志处理器，可传入闭包或处理器实例。
    'processor'    => null,

    // 日志通道列表。
    'channels'     => [
        'file' => [
            // 文件日志驱动。
            'type'           => 'File',

            // 日志保存目录；留空使用框架默认 runtime/log。
            'path'           => '',

            // 是否写入单文件日志；false 表示按日期/级别拆分。
            'single'         => false,

            // 独立日志级别配置，例如 ['error', 'sql']。
            'apart_level'    => [],

            // 最大保留日志文件数量，默认 30，可通过环境变量调整。
            'max_files'      => env('log.max_files', 30),

            // 是否按 JSON 格式输出日志。
            'json'           => false,

            // 当前通道的日志处理器。
            'processor'      => null,

            // 是否关闭当前通道写入。
            'close'          => false,

            // 日志文本格式。
            'format'         => '[%s][%s] %s',

            // 是否实时写入，false 时由框架按生命周期统一写入。
            'realtime_write' => false,
        ],
    ],
];
