z8018
2026-02-11 b8fb68b44c29e4667f6ea5746119413809a60a9e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
using System.Runtime.CompilerServices;
using Microsoft.Extensions.Logging;
 
namespace KH.WMS.Core.Logging;
 
 
/// <summary>
/// 日志服务接口(自动识别模块)
/// </summary>
public interface ILoggerService
{
    /// <summary>
    /// 记录详细跟踪日志 - 每一行SQL执行、详细流程跟踪
    /// </summary>
    void LogVerbose(string message, params object?[] args);
 
    /// <summary>
    /// 记录调试日志 - 方法参数、中间变量
    /// </summary>
    void LogDebug(string message, params object?[] args);
 
    /// <summary>
    /// 记录信息日志 - 用户登录、单据创建
    /// </summary>
    void LogInfo(string message, params object?[] args);
 
    /// <summary>
    /// 记录警告日志 - API调用慢、缓存未命中,需关注
    /// </summary>
    void LogWarning(string message, params object?[] args);
 
    /// <summary>
    /// 记录错误日志 - HTTP 500、业务异常,但系统可继续
    /// </summary>
    void LogError(string message, params object?[] args);
 
    /// <summary>
    /// 记录错误日志(带异常)- HTTP 500、业务异常,但系统可继续
    /// </summary>
    void LogError(Exception exception, string message, params object?[] args);
 
    /// <summary>
    /// 记录致命错误日志 - 数据库连接失败、磁盘满,系统无法继续
    /// </summary>
    void LogFatal(string message, params object?[] args);
 
    /// <summary>
    /// 记录致命错误日志(带异常)- 数据库连接失败、磁盘满,系统无法继续
    /// </summary>
    void LogFatal(Exception exception, string message, params object?[] args);
 
    /// <summary>
    /// 记录操作日志
    /// </summary>
    void LogOperation(string operation, string? userName = null, long? userId = null, object? data = null);
 
    /// <summary>
    /// 记录业务日志
    /// </summary>
    void LogBusiness(string businessType, string message, object? data = null);
 
    /// <summary>
    /// 记录性能日志
    /// </summary>
    void LogPerformance(string operation, long elapsedMs, object? data = null);
 
    /// <summary>
    /// 使用上下文记录日志(可手动指定模块)
    /// </summary>
    void Log(LogContext context, string message, params object?[] args);
}