예제 #1
0
        private void BindDetails(EventLogDto dto)
        {
            var output = new StringBuilder();

            if (dto.Metadata != null)
            {
                output.Append(JsonConvert.JsonSerialize(dto.Metadata));
            }
            txtJsonRaw.Text = output.ToString();

            var html = _serviceHelper.GetHtml(dto);

            webBrowser.DocumentText = html;

            var start = DateTimeHelper.UnixToWindowsMilliSecs(dto.Start);

            txtEventType.Text     = dto.Type;
            txtCorrelationId.Text = dto.CorrelationId;
            txtStart.Text         = start.ToString(DateFormat);
            txtDuration.Text      = dto.ElapsedMillis.ToString();
            txtAccount.Text       = dto.AccountName;
            txtProvider.Text      = dto.ProviderName;
            lblStatus.Text        = dto.Level.ToString();
            lblLevel.BackColor    = GetColorByLevel(dto.Level);
            lblLevel.Visible      = true;
        }
예제 #2
0
 public LogDto AddEventLog(EventLogDto LogDto)
 {
     User user = null;
     //this check must be move to domain servi
     if (!string.IsNullOrWhiteSpace(LogDto.UserName))
         user = _userRep.GetUserById(LogDto.UserName)as User;
     var log = _logService.AddEventLog(LogDto.Code, LogLevel.FromName(LogDto.LogLevel),
         user, LogDto.ClassName, LogDto.MethodName, LogDto.Title, LogDto.Messages);
     return logDtoMapper.MapToModel(log);
 }
예제 #3
0
 public IActionResult GetById([FromBody] EventLogDto eventLogDto)
 {
     try
     {
         _logger.Log(LogLevel.Information, $"Request body: { JsonConvert.SerializeObject(eventLogDto) }");
         return(Ok());
     }
     catch (Exception ex)
     {
         _logger.Log(LogLevel.Error, $"Error: { ex.ToString() }");
         return(BadRequest());
     }
 }
예제 #4
0
        private bool Filter(EventLogDto x, List <FilterCriteriaDto> filters)
        {
            var include = true;

            foreach (var filter in filters)
            {
                var isMatch = filter.Apply(x);
                if (!isMatch)
                {
                    include = false;
                    break;
                }
            }
            return(include);
        }
예제 #5
0
        public EventLogDto Map(EventEntity eventEntity)
        {
            var mapper = _mappers[eventEntity.PayloadType];
            var result = new EventLogDto
            {
                Id                     = eventEntity.Id,
                PublishDateUtc         = eventEntity.PublishDateUtc,
                Status                 = eventEntity.Success ? "Success" : "Failure",
                PayloadType            = eventEntity.PayloadType,
                PayloadTypeDisplayName = mapper.GetPayloadTypeDisplayName(),
                MaskedPayload          = mapper.GetMaskedPayload(eventEntity.ToPayload())
            };

            return(result);
        }
예제 #6
0
        public string GetHtml(EventLogDto dto)
        {
            var body = string.Empty;

            if (dto.Metadata != null)
            {
                foreach (var keyValuePair in dto.Metadata)
                {
                    var value   = ToCamelCaseWithSpaces(keyValuePair.Key);
                    var header  = string.Format("<strong>{0}</strong><hr>", value);
                    var content = string.Empty;
                    if (keyValuePair.Value.GetType() == typeof(Dictionary <string, object>))
                    {
                        var dict = keyValuePair.Value as Dictionary <string, object>;
                        if (dict != null)
                        {
                            foreach (var kvp in dict)
                            {
                                value    = ToCamelCaseWithSpaces(kvp.Key);
                                content += string.Format("<span style='width:300px;margin-bottom:5px;'>{0}</span>:", value);

                                if (kvp.Value.GetType() == typeof(bool))
                                {
                                    var bVal = (bool)kvp.Value;
                                    var bStr = bVal ? "YES" : "NO";
                                    content += string.Format("<span style='color:blue;padding-left:5px;'>{0}</span><br/><br/>", bStr);
                                }
                                else if (kvp.Value.GetType() == typeof(string))
                                {
                                    var bStr = kvp.Value as string;
                                    content += string.Format("<span style='color:blue;padding-left:5px;'>{0}</span><br/><br/>", bStr);
                                }
                            }
                        }
                    }
                    else if (keyValuePair.Value.GetType() == typeof(string))
                    {
                        content = keyValuePair.Value.ToString();
                    }
                    body += string.Format("{0}{1}<br/><br/><br/>", header, content);
                }
            }
            var container = string.Format("<div style='font-family: Arial, Helvetica;font-size:0.7em;letter-spacing:2px;'>{0}</div>", body);

            return(container);
        }
예제 #7
0
        public string GetText(EventLogDto dto)
        {
            var content = new StringBuilder();

            if (dto.Metadata != null)
            {
                foreach (var keyValuePair in dto.Metadata)
                {
                    var value = ToCamelCaseWithSpaces(keyValuePair.Key);

                    for (int i = 0; i < value.Length + 4; i++)
                    {
                        content.Append("=");
                    }
                    content.AppendLine();
                    content.AppendFormat("  {0}", value.ToUpper());
                    content.AppendLine();
                    for (int i = 0; i < value.Length + 4; i++)
                    {
                        content.Append("=");
                    }
                    content.AppendLine();
                    content.AppendLine();


                    if (keyValuePair.Value.GetType() == typeof(Dictionary <string, object>))
                    {
                        var dict = keyValuePair.Value as Dictionary <string, object>;
                        if (dict != null)
                        {
                            foreach (var kvp in dict)
                            {
                                var val = ToCamelCaseWithSpaces(kvp.Key);
                                content.AppendFormat("{0}", val);

                                if (kvp.Value.GetType() == typeof(bool))
                                {
                                    var bVal = (bool)kvp.Value;
                                    var bStr = bVal ? "YES" : "NO";
                                    content.AppendFormat(" : {0}", bStr);
                                }
                                else if (kvp.Value.GetType() == typeof(string))
                                {
                                    var bStr = kvp.Value as string;
                                    content.AppendFormat(" : {0}", bStr);
                                }
                                content.AppendLine();
                                content.AppendLine();
                            }
                        }
                    }
                    else if (keyValuePair.Value.GetType() == typeof(string))
                    {
                        var bStr = keyValuePair.Value.ToString();
                        content.AppendFormat("{0}", bStr);
                        content.AppendLine();
                        content.AppendLine();
                    }
                }
            }
            return(content.ToString());
        }