Skip to content

Commit

Permalink
More Namespaces
Browse files Browse the repository at this point in the history
  • Loading branch information
jutaro committed Nov 29, 2022
1 parent 37d815f commit 0885f38
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 19 deletions.
3 changes: 2 additions & 1 deletion trace-dispatcher/src/Cardano/Logging/Types.hs
Expand Up @@ -67,7 +67,8 @@ import Ouroboros.Network.Util.ShowProxy (ShowProxy (..))
newtype Namespace a = Namespace {unNS :: [Text]}

instance Show (Namespace a) where
show (Namespace ns) = unpack $ intercalate (singleton '.') ns
show (Namespace []) = "[]"
show (Namespace ns) = unpack $ intercalate (singleton '.') ns

-- | The Trace carries the underlying tracer Tracer from the contra-tracer package.
-- It adds a 'LoggingContext' and maybe a 'TraceControl' to every message.
Expand Down
4 changes: 2 additions & 2 deletions trace-dispatcher/test/Cardano/Logging/Test/Oracles.hs
Expand Up @@ -24,8 +24,8 @@ oracleMessages conf ScriptRes {..} =
oracleMessage :: ScriptedMessage -> Bool
oracleMessage (ScriptedMessage _t msg) =
let ns = namespaceFor msg
filterSeverity = getSeverity conf (unNS ns)
backends = getBackends conf (unNS ns)
filterSeverity = getSeverity conf ("Test" : unNS ns)
backends = getBackends conf ("Test" : unNS ns)
inStdout = hasStdoutBackend backends
&& fromEnum (severityFor ns) >= fromEnum filterSeverity
isCorrectStdout = includedExactlyOnce msg srStdoutRes == inStdout
Expand Down
2 changes: 1 addition & 1 deletion trace-dispatcher/test/Cardano/Logging/Test/Script.hs
Expand Up @@ -87,7 +87,7 @@ runScriptMultithreaded time oracle = do
forwardTracer'
(Just ekgTracer')
(Namespace ["Test"])
configureTracers conf [tr]
configureTracers conf [tr]
let sortedMsgs1 = sort msgs1
let (msgsWithIds1,_) = withMessageIds 0 sortedMsgs1
let timedMessages1 = map (withTimeFactor time) msgsWithIds1
Expand Down
30 changes: 15 additions & 15 deletions trace-dispatcher/test/Cardano/Logging/Test/Types.hs
Expand Up @@ -69,31 +69,31 @@ instance LogFormatting Message where
asMetrics _ = []

instance MetaTrace Message where
namespaceFor Message1 {} = Namespace ["Test", "Message1"]
namespaceFor Message2 {} = Namespace ["Test", "Message2"]
namespaceFor Message3 {} = Namespace ["Test", "Message3"]
namespaceFor Message1 {} = Namespace ["Message1"]
namespaceFor Message2 {} = Namespace ["Message2"]
namespaceFor Message3 {} = Namespace ["Message3"]

severityFor (Namespace ["Test","Message1"]) = Debug
severityFor (Namespace ["Test","Message2"]) = Info
severityFor (Namespace ["Test","Message3"]) = Error
severityFor (Namespace ["Message1"]) = Debug
severityFor (Namespace ["Message2"]) = Info
severityFor (Namespace ["Message3"]) = Error
severityFor ns = error ("Message>>severityFor: Missing namespace " ++ show ns)

privacyFor (Namespace ["Test","Message1"]) = Public
privacyFor (Namespace ["Test","Message2"]) = Confidential
privacyFor (Namespace ["Test","Message3"]) = Public
privacyFor (Namespace ["Message1"]) = Public
privacyFor (Namespace ["Message2"]) = Confidential
privacyFor (Namespace ["Message3"]) = Public
privacyFor ns = error ("Message>>privacyFor: Missing namespace " ++ show ns)

documentFor (Namespace ["Test","Message1"]) = "The first message."
documentFor (Namespace ["Test","Message2"]) = "The second message."
documentFor (Namespace ["Test","Message3"]) = "The third message."
documentFor (Namespace ["Message1"]) = "The first message."
documentFor (Namespace ["Message2"]) = "The second message."
documentFor (Namespace ["Message3"]) = "The third message."
documentFor ns = error ("Message>>documentFor: Missing namespace " ++ show ns)

metricsDocFor (Namespace ["Test","Message1"]) = [("Metrics1", "A number")]
metricsDocFor _ = []

allNamespaces = [ Namespace ["Test","Message1"]
, Namespace ["Test","Message2"]
, Namespace ["Test","Message3"]]
allNamespaces = [ Namespace ["Message1"]
, Namespace ["Message2"]
, Namespace ["Message3"]]

instance Arbitrary Message where
arbitrary = oneof
Expand Down

0 comments on commit 0885f38

Please sign in to comment.