public void Log(string activityName, Dictionary <string, object> additionalInfo) { if (!Convert.ToBoolean(configuration[$"{configModuleStatus}:Info"])) { return; } var logDetail = new InfoLogDetail(); logDetail.PopulateModel(activityName, contextAccessor.HttpContext, configuration, additionalInfo, true); logger.Information("{Timestamp}{Message}{Location}{Product}" + "{Hostname}" + "{UserId}{UserName}{SessionId}{CorrelationId}{AdditionalInfo}", logDetail.Timestamp, logDetail.Message, logDetail.Location, logDetail.Product, logDetail.Hostname, logDetail.UserId, logDetail.UserName, logDetail.SessionId, logDetail.CorrelationId, logDetail.AdditionalInfoDictionary.JsonSerialize()); }
private InfoLogDetail GetLogDetail(IInvocation invocation) { var logParameters = new List <MethodParameter>(); for (int i = 0; i < invocation.Arguments.Length; i++) { logParameters.Add(new MethodParameter { Name = invocation.GetConcreteMethod().GetParameters()[i].Name, Value = invocation.Arguments[i], Type = invocation.Arguments[i].GetType().Name }); } var logDetail = new InfoLogDetail { MethodName = $"{invocation.Method.DeclaringType.FullName}.{invocation.Method.Name}", MethodParameters = logParameters }; return(logDetail); }
public void Info(InfoLogDetail logDetail) { _logger.Information(JsonConvert.SerializeObject(logDetail)); }