2 instantiations of LogEntry
Aspire.Dashboard (2)
src\Shared\ConsoleLogs\LogEntry.cs (2)
29return new LogEntry 51return new LogEntry
68 references to LogEntry
Aspire.Dashboard (42)
Components\Controls\LogViewer.razor.cs (6)
49private Virtualize<LogEntry>? VirtualizeRef 59VirtualizeHelper<LogEntry>.TrySetMaxItemCount(field, 10_000); 88private ValueTask<ItemsProviderResult<LogEntry>> GetItems(ItemsProviderRequest r) 93return ValueTask.FromResult(new ItemsProviderResult<LogEntry>(Enumerable.Empty<LogEntry>(), 0)); 96return ValueTask.FromResult(new ItemsProviderResult<LogEntry>(entries.Skip(r.StartIndex).Take(r.Count), entries.Count));
Components\Pages\ConsoleLogs.razor.cs (5)
146private record struct LogEntryToWrite(string ResourceName, LogEntry LogEntry, int? LineNumber); 780_logEntryChannel.Writer.TryWrite(new LogEntryToWrite(subscription.Resource.Name, LogEntry.CreatePause(GetResourceName(subscription.Resource), priorPause.Start, priorPause.End), LineNumber: null)); 798var logEntry = logParser.CreateLogEntry(content, isErrorOutput, resourcePrefix); 940_logEntryChannel.Writer.TryWrite(new LogEntryToWrite(subscription.Resource.Name, LogEntry.CreatePause(GetResourceName(subscription.Resource), timestamp), LineNumber: null)); 949var lastResourceEntry = entries.LastOrDefault(e => e.ResourcePrefix == resourcePrefix);
Components_Controls_LogViewer_razor.g.cs (7)
260LogEntry 266__builder.AddComponentParameter(9, nameof(global::Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize<LogEntry>. 274), (global::Microsoft.AspNetCore.Components.Web.Virtualization.ItemsProviderDelegate<LogEntry>)( 283__builder.AddComponentParameter(10, nameof(global::Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize<LogEntry>. 300__builder.AddComponentParameter(11, nameof(global::Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize<LogEntry>. 317__builder.AddAttribute(12, "ChildContent", (global::Microsoft.AspNetCore.Components.RenderFragment<LogEntry>)((context) => (__builder2) => { 783= (global::Microsoft.AspNetCore.Components.Web.Virtualization.Virtualize<LogEntry>)__value;
ConsoleLogs\LogEntrySerializer.cs (2)
18public static void WriteLogEntriesToStream(IList<LogEntry> entries, Stream stream) 22foreach (var entry in entries)
ConsoleLogs\LogParser.cs (3)
19public LogEntry CreateLogEntry(string rawText, bool isErrorOutput, string? resourcePrefix) 66var logEntry = LogEntry.Create(timestamp, content, rawText, isErrorOutput, resourcePrefix);
Mcp\AspireResourceMcpTools.cs (1)
119var (trimmedItems, limitMessage) = AIHelpers.GetLimitFromEndWithSummary<LogEntry>(
Model\Assistant\AIHelpers.cs (1)
374public static string SerializeLogEntry(LogEntry logEntry)
Model\Assistant\AssistantChatDataContext.cs (1)
268var (trimmedItems, limitMessage) = AIHelpers.GetLimitFromEndWithSummary<LogEntry>(
Model\ConsoleLogsFetcher.cs (5)
30private async Task<List<LogEntry>> FetchLogEntriesAsync(string resourceName, DateTime? filterDate, CancellationToken cancellationToken) 32var logEntries = new List<LogEntry>(); 39var logEntry = logParser.CreateLogEntry(logLine.Content, logLine.IsErrorMessage, resourcePrefix: null); 57public async Task<Dictionary<string, List<LogEntry>>> FetchLogEntriesAsync(HashSet<string> resourceNames, CancellationToken cancellationToken) 65var result = new Dictionary<string, List<LogEntry>>(StringComparer.OrdinalIgnoreCase);
src\Shared\ConsoleLogs\LogEntries.cs (8)
19private readonly CircularBuffer<LogEntry> _logEntries = new(maximumEntryCount); 27public IList<LogEntry> GetEntries() => _logEntries; 45foreach (var pauseEntry in pauseEntries) 60public bool ProcessPauseFilters(LogEntry logEntry) 83public void InsertSorted(LogEntry logLine) 99var entry = _logEntries[i]; 114private void InsertSortedCore(LogEntry logEntry) 126var current = _logEntries[rowIndex];
src\Shared\ConsoleLogs\LogEntry.cs (3)
27public static LogEntry CreatePause(string resourcePrefix, DateTime startTimestamp, DateTime? endTimestamp = null) 44public static LogEntry Create(DateTime? timestamp, string logMessage, bool isErrorMessage) 49public static LogEntry Create(DateTime? timestamp, string logMessage, string rawLogContent, bool isErrorMessage, string? resourcePrefix)
Aspire.Dashboard.Components.Tests (6)
Pages\ConsoleLogsTests.cs (6)
466var earliestEntry = instance._logEntries.GetEntries()[0]; 526var earliestEntry = instance._logEntries.GetEntries()[0]; 723var pauseLog = Assert.Single(cut.Instance._logEntries.GetEntries()); 745var pauseEntry = Assert.Single(cut.Instance._logEntries.GetEntries()); 768var newLog = Assert.Single(logViewer.Instance.LogEntries!.GetEntries(), e => e.RawContent == resumeContent); 778foreach (var logEntry in logEntries.GetEntries())
Aspire.Dashboard.Tests (20)
ConsoleLogsTests\LogEntriesTests.cs (20)
22var logEntry = logParser.CreateLogEntry(content, isError, resourcePrefix: null); 36var logEntry1 = logParser.CreateLogEntry("Test", isErrorOutput: false, resourcePrefix: null); 40var logEntry2 = logParser.CreateLogEntry("2024-08-19T06:12:01.000Z Test", isErrorOutput: false, resourcePrefix: null); 47var logEntry3 = logParser.CreateLogEntry("2024-08-19T06:12:02.000Z Test", isErrorOutput: false, resourcePrefix: null); 64logEntries.InsertSorted(LogEntry.CreatePause( 70var pauseEntry = LogEntry.CreatePause("resource-name", new DateTime(2024, 1, 1, 0, 0, 0, DateTimeKind.Utc)); 80var entry = Assert.Single(logEntries.GetEntries()); 95var entry = Assert.Single(logEntries.GetEntries()); 244logEntries.InsertSorted(LogEntry.Create(timestamp.AddSeconds(1), "1", isErrorMessage: false)); 245logEntries.InsertSorted(LogEntry.Create(timestamp.AddSeconds(3), "3", isErrorMessage: false)); 246logEntries.InsertSorted(LogEntry.Create(timestamp.AddSeconds(2), "2", isErrorMessage: false)); 265logEntries.InsertSorted(LogEntry.Create(timestamp.AddSeconds(1), "1", isErrorMessage: false)); 266logEntries.InsertSorted(LogEntry.Create(timestamp.AddSeconds(2), "2", isErrorMessage: false)); 267logEntries.InsertSorted(LogEntry.Create(timestamp.AddSeconds(3), "3", isErrorMessage: false)); 285logEntries.InsertSorted(LogEntry.Create(timestamp.AddSeconds(1), "1", isErrorMessage: false)); 286logEntries.InsertSorted(LogEntry.Create(timestamp.AddSeconds(3), "3", isErrorMessage: false)); 287logEntries.InsertSorted(LogEntry.Create(timestamp.AddSeconds(2), "2", isErrorMessage: false)); 303var entry = parser.CreateLogEntry("\x1b[36mhttps://www.example.com\u001b[0m", isErrorOutput: false, resourcePrefix: null); 318var entry = parser.CreateLogEntry("\u001b[40m\u001b[32minfo\u001b[39m\u001b[22m\u001b[49m: LoggerName", isErrorOutput: false, resourcePrefix: null);