Exemplo n.º 1
0
        /// <summary>
        /// Writting a log message in file.
        /// </summary>
        /// <param name="logType"></param>
        /// <param name="message"></param>
        /// <param name="methodBase"></param>
        /// <param name="exception"></param>
        public void WriteLog(CommonEnum.LogLevelEnum logType, MethodBase methodBase, string referenceNo = null, string message = null, Exception exception = null)
        {
            string        refNo      = !string.IsNullOrWhiteSpace(referenceNo) ? referenceNo : Guid.NewGuid().ToString();
            StringBuilder logMessage = new StringBuilder();

            logMessage.AppendLine($"Method: {methodBase.DeclaringType.FullName}.{methodBase.Name}");
            logMessage.AppendLine($"Issued Date: {DateTime.Now}");
            logMessage.AppendLine($"Reference No.: {refNo}");
            if (!string.IsNullOrWhiteSpace(message))
            {
                logMessage.AppendLine($"Message: {message}");
            }

            Array logLevelEnums = System.Enum.GetValues(typeof(CommonEnum.LogLevelEnum));

            CommonEnum.LogLevelEnum availableLogTypes = (CommonEnum.LogLevelEnum)_seriLogSettings.LogLevel;
            foreach (CommonEnum.LogLevelEnum item in logLevelEnums)
            {
                if ((availableLogTypes & item) == logType && System.Enum.TryParse(logType.ToString(), out Serilog.Events.LogEventLevel logLevel))
                {
                    Log.Logger.Write(logLevel, exception, logMessage.ToString());
                }
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// Writting a log message in file async.
 /// </summary>
 /// <param name="logType"></param>
 /// <param name="message"></param>
 /// <param name="methodBase"></param>
 /// <param name="exception"></param>
 public async Task WriteLogAsync(CommonEnum.LogLevelEnum logType, MethodBase methodBase, string referenceNo = null, string message = null, Exception exception = null)
 {
     await Task.Run(() => WriteLog(logType, methodBase, referenceNo, message, exception));
 }