blob: d4be193d00bc028fec00974378221a4c92b44993 [file] [log] [blame]
Tim Windelschmidt6d33a432025-02-04 14:34:25 +01001// Copyright The Monogon Project Authors.
Serge Bazanski5ade7322020-08-27 13:27:51 +02002// SPDX-License-Identifier: Apache-2.0
Serge Bazanski5ade7322020-08-27 13:27:51 +02003
4package logtree
5
Serge Bazanskib0272182020-11-02 18:39:44 +01006import (
7 "fmt"
8
Serge Bazanski3c5d0632024-09-12 10:49:12 +00009 "source.monogon.dev/go/logging"
Tim Windelschmidt9f21f532024-05-07 15:14:20 +020010 lpb "source.monogon.dev/osbase/logtree/proto"
Serge Bazanskib0272182020-11-02 18:39:44 +010011)
12
Serge Bazanski3c5d0632024-09-12 10:49:12 +000013func SeverityFromProto(s lpb.LeveledLogSeverity) (logging.Severity, error) {
Serge Bazanskib0272182020-11-02 18:39:44 +010014 switch s {
Tim Windelschmidta10d0cb2025-01-13 14:44:15 +010015 case lpb.LeveledLogSeverity_LEVELED_LOG_SEVERITY_INFO:
Serge Bazanski3c5d0632024-09-12 10:49:12 +000016 return logging.INFO, nil
Tim Windelschmidta10d0cb2025-01-13 14:44:15 +010017 case lpb.LeveledLogSeverity_LEVELED_LOG_SEVERITY_WARNING:
Serge Bazanski3c5d0632024-09-12 10:49:12 +000018 return logging.WARNING, nil
Tim Windelschmidta10d0cb2025-01-13 14:44:15 +010019 case lpb.LeveledLogSeverity_LEVELED_LOG_SEVERITY_ERROR:
Serge Bazanski3c5d0632024-09-12 10:49:12 +000020 return logging.ERROR, nil
Tim Windelschmidta10d0cb2025-01-13 14:44:15 +010021 case lpb.LeveledLogSeverity_LEVELED_LOG_SEVERITY_FATAL:
Serge Bazanski3c5d0632024-09-12 10:49:12 +000022 return logging.FATAL, nil
Serge Bazanskib0272182020-11-02 18:39:44 +010023 default:
24 return "", fmt.Errorf("unknown severity value %d", s)
25 }
26}
27
Serge Bazanski3c5d0632024-09-12 10:49:12 +000028func SeverityToProto(s logging.Severity) lpb.LeveledLogSeverity {
Serge Bazanskib0272182020-11-02 18:39:44 +010029 switch s {
Serge Bazanski3c5d0632024-09-12 10:49:12 +000030 case logging.INFO:
Tim Windelschmidta10d0cb2025-01-13 14:44:15 +010031 return lpb.LeveledLogSeverity_LEVELED_LOG_SEVERITY_INFO
Serge Bazanski3c5d0632024-09-12 10:49:12 +000032 case logging.WARNING:
Tim Windelschmidta10d0cb2025-01-13 14:44:15 +010033 return lpb.LeveledLogSeverity_LEVELED_LOG_SEVERITY_WARNING
Serge Bazanski3c5d0632024-09-12 10:49:12 +000034 case logging.ERROR:
Tim Windelschmidta10d0cb2025-01-13 14:44:15 +010035 return lpb.LeveledLogSeverity_LEVELED_LOG_SEVERITY_ERROR
Serge Bazanski3c5d0632024-09-12 10:49:12 +000036 case logging.FATAL:
Tim Windelschmidta10d0cb2025-01-13 14:44:15 +010037 return lpb.LeveledLogSeverity_LEVELED_LOG_SEVERITY_FATAL
Serge Bazanskib0272182020-11-02 18:39:44 +010038 default:
Tim Windelschmidta10d0cb2025-01-13 14:44:15 +010039 return lpb.LeveledLogSeverity_LEVELED_LOG_SEVERITY_INVALID
Serge Bazanskib0272182020-11-02 18:39:44 +010040 }
41}