CSFramework.WebApi后端框架Log日志配置详解
作者:作者不详  发布日期:2020-08-20 16:26:47
  CSFramework.WebApi后端框架Log日志配置详解


CSFramework.WebApi后端框架Log日志配置详解

CSFramework.WebApi框架提供两种日志:


1. 消息监听日志:


用于监听所有客户端的请求并写入日志数据库,包括请求的IP、请求时间、请求方法(POST/GET)、URI地址、StatusCode状态码等信息。


以下是具体代码实现:

C# Code:

/// <summary>
/// 监听WebAPI服务器所有请求.
/// </summary>
public class RequestListenHandler : DelegatingHandler
{
  
protected ILog2Database _log;
  
  
public RequestListenHandler(ILog2Database log)
  {
    _log
= log;
  }
  
  
protected override System.Threading.Tasks.Task<HttpResponseMessage> SendAsync(
  HttpRequestMessage request, System.Threading.CancellationToken cancellationToken)
  {
    
//注意:若Request.Method=POST,不可读取Request.Body流(Stream)信息,一旦读取,会销毁Stream对象。
    
//Method=GET,读取RequestUri
    
    
//控制台显示请求的URI信息
    
Console.WriteLine("收到请求:" + request.RequestUri);
    
    
//调用WebAPI控制器接口完毕,才执行下面的代码
    
return base.SendAsync(request, cancellationToken).ContinueWith((task) =>
    {
      
//添加日志
      
_log.Write(request, task.Result as HttpResponseMessage);
      
      
return task.Result;
      });
    }
  }
  
  
//来源:C/S框架网 | www.csframework.com | QQ:23404761



app.config配置, Yes/No。


XML Code:

<!--监听接口访问(Yes/No)-->
<add key="RequestListen" value="Yes"/>

//来源:C/S框架网 | www.csframework.com | QQ:23404761


判断app.config配置value=Yes,则添加到Web API中的消息处理程序(Message Handler)


C# Code:

//监听接口访问
if (WebApiSettings.Current.AllowRequestListen)
config.MessageHandlers.Add(
new RequestListenHandler(log));

//来源:C/S框架网 | www.csframework.com | QQ:23404761



日志信息:

贴图图片-系统日志



2. WebApi接口访问日志:


用于记录用户访问的具体接口信息,比如:api/do/post,api/user/file/upload等,
包括请求时间、日志类型、接口编码、具体方法名(OP),请求的Body内容(请求的JSON数据)等。


在CommandHandler.ProcessCommand方法内提交日志信息到日志数据库。


C# Code:

if (command.Log != null)
command.Log.Write(command.HttpRequest, command.UserRequest, command.ClientData);

//来源:C/S框架网 | www.csframework.com | QQ:23404761



日志信息:


贴图图片-接口访问日志



ASP.NET WebApi快速开发框架|APP后端框架-标准版V1.0

适用开发 适用开发:快速搭建APP、B/S、C/S、微信小程序、公众号、Web站点等后端应用服务程序。
运行平台 运行平台:Windows + .NET Framework 4.5
开发工具 开发工具:Visual Studio 2015+,C#语言
数据库 数据库:Microsoft SQLServer 2008R2+(支持多数据库:Oracle/MySql)

ASP.NET WebApi快速开发框架|MVC框架|APP微信小程序后端框架|服务端框架-标准版V1.0



C/S框架网|原创精神.创造价值.打造精品

扫一扫加微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务


上一篇 下一篇