private static string MakeRealTraceId(Maybe <string> traceIdFromCurrentEventId, string traceId) { return(@return(traceIdFromCurrentEventId.ValueOr(traceId))); string @return(string value) { return(string.IsNullOrWhiteSpace(value) ? LogTraceId.Get() : value); } }
/// <summary> /// Create a new instance of <see cref="LogEventId"/>. /// </summary> /// <param name="id"></param> /// <param name="name"></param> /// <param name="traceId"></param> public LogEventId(string id, string name, string traceId = null) { var baseTime = DateTime.Now; Id = id; TraceId = string.IsNullOrWhiteSpace(traceId) ? LogTraceId.Get() : traceId; Timestamp = new DateTimeOffset(baseTime, TimeZoneInfo.Local.GetUtcOffset(baseTime)); Name = name; }