コード例 #1
0
        /// <summary>
        /// 添加请求日志服务
        /// </summary>
        /// <param name="services">服务收藏</param>
        /// <param name="options">请求日志选项配置</param>
        /// <returns>服务收藏</returns>
        public static IServiceCollection AddRequestLog(this IServiceCollection services, Action <RequestLogOptions> options = null)
        {
            var apiExceptionHandleOptions = new RequestLogOptions();

            if (options != null)
            {
                options(apiExceptionHandleOptions);
            }

            services.AddSingleton <Microsoft.Extensions.Options.IOptions <RequestLogOptions> >(provider =>
            {
                return(Microsoft.Extensions.Options.Options.Create <RequestLogOptions>(apiExceptionHandleOptions));
            });

            return(services);
        }
コード例 #2
0
 /// <summary>
 /// 构造方法
 /// </summary>
 /// <param name="options">请求日志选项配置</param>
 /// <param name="log">日志</param>
 /// <param name="theOperation">本次操作</param>
 public GRpcRequestLogInterceptor(IOptions <RequestLogOptions> options, ILogable log, ITheOperation theOperation = null)
 {
     this.options      = options.Value;
     this.log          = log;
     this.theOperation = theOperation;
 }