split out log-ingest modules to their own crate
This commit is contained in:
Generated
+15
-2
@@ -1764,7 +1764,6 @@ name = "signal-gateway-bin"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"chrono",
|
||||
"conf",
|
||||
"conf-extra",
|
||||
"dotenvy",
|
||||
@@ -1775,7 +1774,7 @@ dependencies = [
|
||||
"serde_json",
|
||||
"signal-gateway",
|
||||
"signal-gateway-app-code",
|
||||
"syslog_rfc5424",
|
||||
"signal-gateway-log-ingest",
|
||||
"tokio",
|
||||
"tokio-util",
|
||||
"toml",
|
||||
@@ -1784,6 +1783,20 @@ dependencies = [
|
||||
"url",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "signal-gateway-log-ingest"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"conf",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"signal-gateway",
|
||||
"syslog_rfc5424",
|
||||
"tokio",
|
||||
"tracing",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "signal-hook-registry"
|
||||
version = "1.4.7"
|
||||
|
||||
@@ -5,6 +5,7 @@ members = [
|
||||
"signal-gateway",
|
||||
"signal-gateway-app-code",
|
||||
"signal-gateway-bin",
|
||||
"signal-gateway-log-ingest",
|
||||
]
|
||||
|
||||
[workspace.package]
|
||||
|
||||
@@ -18,9 +18,9 @@ rustls-tls = ["signal-gateway/rustls-tls"]
|
||||
[dependencies]
|
||||
signal-gateway = { path = "../signal-gateway" }
|
||||
signal-gateway-app-code = { path = "../signal-gateway-app-code" }
|
||||
signal-gateway-log-ingest = { path = "../signal-gateway-log-ingest" }
|
||||
|
||||
async-trait = { workspace = true }
|
||||
chrono = { workspace = true }
|
||||
conf = { workspace = true }
|
||||
conf-extra = { workspace = true }
|
||||
dotenvy = { workspace = true }
|
||||
@@ -30,7 +30,6 @@ reqwest = { workspace = true }
|
||||
url = { workspace = true }
|
||||
serde = { workspace = true }
|
||||
serde_json = { workspace = true }
|
||||
syslog_rfc5424 = { workspace = true }
|
||||
toml = { workspace = true }
|
||||
tokio = { workspace = true, features = ["rt-multi-thread", "signal"] }
|
||||
tokio-util = { workspace = true }
|
||||
|
||||
@@ -19,11 +19,7 @@ use admin_http::AdminHttpConfig;
|
||||
mod app_code;
|
||||
use app_code::AppCodeConfigExt;
|
||||
|
||||
mod syslog;
|
||||
use syslog::SyslogConfig;
|
||||
|
||||
pub mod json;
|
||||
use json::JsonConfig;
|
||||
use signal_gateway_log_ingest::{JsonConfig, SyslogConfig};
|
||||
|
||||
/// Top-level configuration for signal-gateway.
|
||||
#[derive(Conf, Debug)]
|
||||
@@ -48,7 +44,7 @@ pub struct Config {
|
||||
#[conf(flatten, prefix)]
|
||||
admin_http: Option<AdminHttpConfig>,
|
||||
/// Application source code configurations for Claude tools.
|
||||
#[conf(long, env, value_parser = serde_json::from_str)]
|
||||
#[conf(long, env, value_parser = serde_json::from_str, default, default_help_str = "[]")]
|
||||
app_code: Vec<AppCodeConfigExt>,
|
||||
#[conf(flatten, serde(flatten))]
|
||||
gateway: GatewayConfig,
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
[package]
|
||||
name = "signal-gateway-log-ingest"
|
||||
version = "0.1.0"
|
||||
edition.workspace = true
|
||||
|
||||
[lints]
|
||||
workspace = true
|
||||
|
||||
[dependencies]
|
||||
signal-gateway = { path = "../signal-gateway" }
|
||||
|
||||
chrono = { workspace = true }
|
||||
conf = { workspace = true }
|
||||
serde = { workspace = true }
|
||||
serde_json = { workspace = true }
|
||||
syslog_rfc5424 = { workspace = true }
|
||||
tokio = { workspace = true }
|
||||
tracing = { workspace = true }
|
||||
@@ -0,0 +1,11 @@
|
||||
//! Log ingestion modules for signal-gateway.
|
||||
//!
|
||||
//! This crate provides listeners for receiving log messages in various formats:
|
||||
//! - JSON (logstash-compatible) over UDP and TCP
|
||||
//! - Syslog (RFC 5424) over UDP and TCP
|
||||
|
||||
pub mod json;
|
||||
pub mod syslog;
|
||||
|
||||
pub use json::JsonConfig;
|
||||
pub use syslog::SyslogConfig;
|
||||
@@ -247,9 +247,7 @@ impl ClaudeWorker {
|
||||
let after_chars = self.message_buffer_chars();
|
||||
warn!(
|
||||
"Compaction rate-limited: dropped {} oldest messages ({} -> {} chars)",
|
||||
dropped,
|
||||
before_chars,
|
||||
after_chars
|
||||
dropped, before_chars, after_chars
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user