Skip to main content

provide_telemetry/
errors.rs

1// SPDX-FileCopyrightText: Copyright (C) 2026 provide.io llc
2// SPDX-License-Identifier: Apache-2.0
3// SPDX-Comment: Part of provide-telemetry.
4//
5
6#[derive(thiserror::Error, Debug, Clone, PartialEq, Eq)]
7#[error("{message}")]
8pub struct TelemetryError {
9    pub message: String,
10}
11
12impl TelemetryError {
13    pub fn new(message: impl Into<String>) -> Self {
14        Self {
15            message: message.into(),
16        }
17    }
18}
19
20#[derive(thiserror::Error, Debug, Clone, PartialEq, Eq)]
21#[error("{message}")]
22pub struct ConfigurationError {
23    pub message: String,
24}
25
26impl ConfigurationError {
27    pub fn new(message: impl Into<String>) -> Self {
28        Self {
29            message: message.into(),
30        }
31    }
32}
33
34#[derive(thiserror::Error, Debug, Clone, PartialEq, Eq)]
35#[error("{message}")]
36pub struct EventSchemaError {
37    pub message: String,
38}
39
40impl EventSchemaError {
41    pub fn new(message: impl Into<String>) -> Self {
42        Self {
43            message: message.into(),
44        }
45    }
46}