apple / apple/foundationdb

Document Severity-Levels

Open
#1,516 5 comments 0 reactions 0 assignees View on GitHub
documentation
Dominant language
C++
Stars
16.7k
Forks
1.6k
Avg merge
1d 20h
Merged PRs (30d)
126

Description

The severity-levels are declared here:

https://github.com/apple/foundationdb/blob/648fc8ec7c3c9f55e6c552f7b281db3c4acc40b4/flow/Trace.h#L45

However, there doesn't seem to be any explanation what they actually mean. I usually like the approach of defining it through production reporting. For example this is how I usually think about it:

```
SevError: Should never happen or something happened that might impacts availability of cluster. Needs immediate attention (for example page people).
SevWarnAlways: Means something bad happens that might need some human attention (for example a failed disk) but the cluster should be able to survive for another 12 hours or so. Create a ticket.
SevWarn: Something that might cause the cluster to not run optimally happened but it won't be actionable in the short term.
SevInfo: Everything else that is useful to have in production
SevDebug: Everything that might be useful for testing but shouldn't be logged in production.
```

Now I assume that this way of thinking is not the same as other people think of it.

I think at the very least there should be a clear definition as comment of how these levels should be used. Otherwise a contributor won't be able to use these Traces in a consistent way.

Contributor guide

Open the contributing guide

Research direction

Read flow/Trace.h around line 45 and the issue's proposed meanings. Confirm the intended production use of each severity with the project's context, then document the agreed definitions next to the declarations; done when contributors can choose levels consistently.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
databases, documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.