finish secrets finding work and audit remarks work save

This commit is contained in:
StellaOps Bot
2026-01-04 21:48:13 +02:00
parent 75611a505f
commit 8862e112c4
157 changed files with 11702 additions and 416 deletions

View File

@@ -12,13 +12,7 @@ public sealed class EbpfTraceCollector : ITraceCollector
private readonly ISymbolResolver _symbolResolver;
private readonly TimeProvider _timeProvider;
private bool _isRunning;
private TraceCollectorStats _stats = new TraceCollectorStats
{
EventsCollected = 0,
EventsDropped = 0,
BytesProcessed = 0,
StartedAt = DateTimeOffset.UtcNow
};
private TraceCollectorStats _stats;
public EbpfTraceCollector(
ILogger<EbpfTraceCollector> logger,
@@ -28,6 +22,13 @@ public sealed class EbpfTraceCollector : ITraceCollector
_logger = logger ?? throw new ArgumentNullException(nameof(logger));
_symbolResolver = symbolResolver ?? throw new ArgumentNullException(nameof(symbolResolver));
_timeProvider = timeProvider ?? TimeProvider.System;
_stats = new TraceCollectorStats
{
EventsCollected = 0,
EventsDropped = 0,
BytesProcessed = 0,
StartedAt = _timeProvider.GetUtcNow()
};
}
public Task StartAsync(TraceCollectorConfig config, CancellationToken cancellationToken = default)

View File

@@ -11,13 +11,7 @@ public sealed class EtwTraceCollector : ITraceCollector
private readonly ILogger<EtwTraceCollector> _logger;
private readonly TimeProvider _timeProvider;
private bool _isRunning;
private TraceCollectorStats _stats = new TraceCollectorStats
{
EventsCollected = 0,
EventsDropped = 0,
BytesProcessed = 0,
StartedAt = DateTimeOffset.UtcNow
};
private TraceCollectorStats _stats;
public EtwTraceCollector(
ILogger<EtwTraceCollector> logger,
@@ -25,6 +19,13 @@ public sealed class EtwTraceCollector : ITraceCollector
{
_logger = logger ?? throw new ArgumentNullException(nameof(logger));
_timeProvider = timeProvider ?? TimeProvider.System;
_stats = new TraceCollectorStats
{
EventsCollected = 0,
EventsDropped = 0,
BytesProcessed = 0,
StartedAt = _timeProvider.GetUtcNow()
};
}
public Task StartAsync(TraceCollectorConfig config, CancellationToken cancellationToken = default)

View File

@@ -169,9 +169,9 @@ public sealed class TraceIngestionService : ITraceIngestionService
return Array.Empty<NormalizedTrace>();
}
private static string GenerateTraceId(string scanId, long eventCount)
private string GenerateTraceId(string scanId, long eventCount)
{
var input = $"{scanId}|{eventCount}|{DateTimeOffset.UtcNow.Ticks}";
var input = $"{scanId}|{eventCount}|{_timeProvider.GetUtcNow().Ticks}";
var hash = SHA256.HashData(System.Text.Encoding.UTF8.GetBytes(input));
return $"trace_{Convert.ToHexString(hash)[..16].ToLowerInvariant()}";
}

View File

@@ -10,14 +10,17 @@ namespace StellaOps.Scanner.Runtime.Slices;
public sealed class ObservedSliceGenerator
{
private readonly SliceExtractor _sliceExtractor;
private readonly TimeProvider _timeProvider;
private readonly ILogger<ObservedSliceGenerator> _logger;
public ObservedSliceGenerator(
SliceExtractor sliceExtractor,
ILogger<ObservedSliceGenerator> logger)
ILogger<ObservedSliceGenerator> logger,
TimeProvider? timeProvider = null)
{
_sliceExtractor = sliceExtractor ?? throw new ArgumentNullException(nameof(sliceExtractor));
_logger = logger ?? throw new ArgumentNullException(nameof(logger));
_timeProvider = timeProvider ?? TimeProvider.System;
}
/// <summary>
@@ -72,12 +75,13 @@ public sealed class ObservedSliceGenerator
if (enrichment.TryGetValue(key, out var enrich) && enrich.Observed)
{
var now = _timeProvider.GetUtcNow();
return edge with
{
Observed = new ObservedEdgeMetadata
{
FirstObserved = enrich.FirstObserved ?? DateTimeOffset.UtcNow,
LastObserved = enrich.LastObserved ?? DateTimeOffset.UtcNow,
FirstObserved = enrich.FirstObserved ?? now,
LastObserved = enrich.LastObserved ?? now,
ObservationCount = (int)enrich.ObservationCount,
TraceDigest = null
}