Пример #1
0
        private Task HandleExceptionAsync(HttpContext context, Exception ex)
        {
            var result = JsonConvert.SerializeObject(new { error = ex.Message });

            string[] fullpath   = context.Request.Path.ToString().Split('/');
            string   controller = "null";
            string   action     = "null";

            if (fullpath.Length == 5)
            {
                controller = fullpath[3];
                action     = fullpath[4];
            }

            LOG_WEB_API_ERROR data = new LOG_WEB_API_ERROR()
            {
                LOG_DATE      = DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss", new CultureInfo("en-US")),
                CLIENT_IP     = Dns.GetHostEntry(Dns.GetHostName()).AddressList.FirstOrDefault(ip => ip.AddressFamily == AddressFamily.InterNetwork).ToString(),
                SERVER_IP     = Dns.GetHostEntry(Dns.GetHostName()).AddressList.FirstOrDefault(ip => ip.AddressFamily == AddressFamily.InterNetwork).ToString(),
                ERROR_MESSAGE = result,
                LOG_LEVEL     = "Error",
                SERVICE_NAME  = string.Format("{0}/{1}", controller, action),
                SERVICE_TYPE  = "I"
            };

            Logger(data);

            return(context.Response.WriteAsync(result));
        }
Пример #2
0
 public void ExceptionLogfile(LOG_WEB_API_ERROR data)
 {
     try
     {
         NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
         logger = LogManager.GetLogger("LogfileException");
         NLog.MappedDiagnosticsContext.Set("APPNAME", "api");
         NLog.MappedDiagnosticsContext.Set("LOG_LEVEL", data.LOG_LEVEL);
         NLog.MappedDiagnosticsContext.Set("SERVICE_NAME", data.SERVICE_NAME);
         NLog.MappedDiagnosticsContext.Set("SERVICE_TYPE", data.SERVICE_TYPE);
         NLog.MappedDiagnosticsContext.Set("ERROR_MESSAGE", data.ERROR_MESSAGE);
         NLog.MappedDiagnosticsContext.Set("SERVER_IP", data.SERVER_IP);
         NLog.MappedDiagnosticsContext.Set("CLIENT_IP ", data.CLIENT_IP);
         NLog.MappedDiagnosticsContext.Set("LOG_DATE", data.LOG_DATE);
         logger.Log(NLog.LogLevel.Trace, "");
     }
     catch (Exception e)
     {
         e.Message.ToString();
     }
 }
Пример #3
0
        private void Logger(LOG_WEB_API_ERROR data)
        {
            LogController log = new LogController(_logger, _configuration);

            log.ExceptionLogfile(data);
        }