Uh oh!
There was an error while loading. Please reload this page.
refactor(logs): make structured severity automatic - #474
Conversation
8e349c3 to
d747cddCompareGreptile SummaryThis PR removes the configurable structured-log parsing setting and makes recognized application severity normalization automatic at stdout/stderr capture boundaries while retaining raw log bodies.
Confidence Score: 4/5The PR should not merge until collector severity normalization is restricted to application logs or the collector preserves and checks an equivalent application/system classification. The worker-runtime path retains an explicit system marker, but the Kubernetes collector now applies application-level parsing to every collected container record despite ingesting system and sidecar logs without such a marker. Files Needing Attention: crates/alien-operator/src/collector_logs.rs and crates/alien-helm/src/generator.rs
|
| Filename | Overview |
|---|---|
| crates/alien-core/src/application_logs.rs | Adds a cheap object-shaped input guard while retaining the existing recognized-level parser and conflict behavior. |
| crates/alien-worker-runtime/src/otlp.rs | Removes the parsing flag and automatically normalizes captured application output while preserving stream severity for explicitly marked system records. |
| crates/alien-operator/src/collector_logs.rs | Makes severity parsing unconditional even though this collector ingests logs from all namespace-scoped containers without an application/system distinction. |
| crates/alien-core/src/stack_settings.rs | Removes the obsolete log setting while retaining backward-compatible permissive deserialization of historical unknown fields. |
| crates/alien-cloudformation/src/generator.rs | Removes the obsolete parameter, condition, metadata, and registration setting from generated templates. |
| crates/alien-helm/src/generator.rs | Removes the obsolete operator setting, while the existing broad collector input scope exposes the unconditional normalization issue. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart LR
P[Namespace pod logs] --> C[Fluent Bit collector]
C --> I[/operator /internal/logs/]
I --> R[CollectorLogRecord]
R --> S{Recognized JSON level?}
S -->|Yes| J[Use structured severity]
S -->|No| F[Use stdout/stderr fallback]
J --> O[OTLP storage]
F --> O
Prompt To Fix All With AI
### Issue 1
crates/alien-operator/src/collector_logs.rs:326-327
**Collector reclassifies system logs**
When a system or sidecar container emits JSON with a recognized level field, the namespace-wide collector now treats that field as application severity instead of retaining the stdout/stderr fallback, causing incorrect severity-based filtering, alerts, and display.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Reviews (2): Last reviewed commit: "refactor(logs): make structured severity..." | Re-trigger Greptile
Uh oh!
There was an error while loading. Please reload this page.
d747cdd to
8ec098cCompareToo many files changed for review (136 files, 100 file limit). Bypass the limit by tagging |
Uh oh!
There was an error while loading. Please reload this page.
Summary
Validation