наблюдаемость: завершить базовый контур Community
Добавить структурированные журналы, метрики, трассировку и безопасный канал критических ошибок. Усилить границы рантайма, тесты, проверку зависимостей и сценарии развёртывания.
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
use crank_observability::{
|
||||
ObservabilityConfig, ObservabilityInitError, RedactionLimits, ServiceIdentity, init,
|
||||
};
|
||||
|
||||
fn config() -> ObservabilityConfig {
|
||||
ObservabilityConfig::new(
|
||||
ServiceIdentity::try_new("lifecycle-test", "0.3.1", "test").expect("valid test identity"),
|
||||
"info",
|
||||
RedactionLimits::default(),
|
||||
)
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn repeated_global_initialization_returns_typed_error() {
|
||||
let _lifecycle = init(config()).expect("first initialization must succeed");
|
||||
let error = init(config()).expect_err("second initialization must fail");
|
||||
|
||||
assert!(matches!(
|
||||
error,
|
||||
ObservabilityInitError::SubscriberAlreadyInitialized
|
||||
));
|
||||
}
|
||||
Reference in New Issue
Block a user