-
Notifications
You must be signed in to change notification settings - Fork 49
Expand file tree
/
Copy pathProcessedMessageEntity.cs
More file actions
35 lines (28 loc) · 1.23 KB
/
ProcessedMessageEntity.cs
File metadata and controls
35 lines (28 loc) · 1.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
namespace ServiceControl.Audit.Persistence.Sql.Core.Entities;
public class ProcessedMessageEntity
{
public long Id { get; set; }
public string UniqueMessageId { get; set; } = null!;
// JSON columns for complex nested data
public string HeadersJson { get; set; } = null!;
// Full-text search column (combines headers JSON and message body for indexing)
public string? SearchableContent { get; set; }
// Denormalized fields for efficient querying
public string? MessageId { get; set; }
public string? MessageType { get; set; }
public DateTime? TimeSent { get; set; }
public DateTime CreatedOn { get; set; }
public bool IsSystemMessage { get; set; }
public int Status { get; set; }
public string? ConversationId { get; set; }
// Endpoint details (denormalized from MessageMetadata)
public string? ReceivingEndpointName { get; set; }
// Performance metrics (stored as ticks for precision)
public long? CriticalTimeTicks { get; set; }
public long? ProcessingTimeTicks { get; set; }
public long? DeliveryTimeTicks { get; set; }
// Body storage info
public int BodySize { get; set; }
public string? BodyUrl { get; set; }
public bool BodyNotStored { get; set; }
}