Skip to content

Commit 60a3694

Browse files
authored
Fix missing IPsec fields caused scrape to fail (#97)
* Fix missing encr_alg field in child SA caused scrape to fail * Fix missing integ_alg field caused scrape to fail * Fix missing {bytes,packets}_{in,out} fields caused scrape to fail * Fix missing life_time and install_time fields caused scrape to fail
1 parent 0f1d30f commit 60a3694

File tree

2 files changed

+13
-13
lines changed

2 files changed

+13
-13
lines changed

src/application/metrics/ipsec.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -80,10 +80,10 @@ impl Collector for IPsecResult {
8080
in_packets,
8181
out_packets,
8282
) = (
83-
child_sa.map(|c| c.bytes_in).unwrap_or_default(),
84-
child_sa.map(|c| c.bytes_out).unwrap_or_default(),
85-
child_sa.map(|c| c.packets_in).unwrap_or_default(),
86-
child_sa.map(|c| c.packets_out).unwrap_or_default(),
83+
child_sa.and_then(|c| c.bytes_in).unwrap_or_default(),
84+
child_sa.and_then(|c| c.bytes_out).unwrap_or_default(),
85+
child_sa.and_then(|c| c.packets_in).unwrap_or_default(),
86+
child_sa.and_then(|c| c.packets_out).unwrap_or_default(),
8787
);
8888
let status = match (&sa.state, child_sa.map(|c| &c.state)) {
8989
(SAState::Unknown, _) | (_, Some(ChildSAState::Unknown) | None) => 3,

src/domain/ipsec.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ pub struct SA {
1717
pub remote_eap_id: Option<String>,
1818
pub encr_alg: Option<String>,
1919
pub encr_keysize: Option<u32>,
20-
pub integ_alg: String,
20+
pub integ_alg: Option<String>,
2121
pub integ_keysize: Option<u32>,
2222
pub prf_alg: String,
2323
pub dh_group: Option<String>,
@@ -52,22 +52,22 @@ pub struct ChildSA {
5252
pub state: ChildSAState,
5353
pub mode: String,
5454
pub protocol: Option<String>,
55-
pub encr_alg: String,
55+
pub encr_alg: Option<String>,
5656
pub encr_keysize: Option<u32>,
57-
pub integ_alg: String,
57+
pub integ_alg: Option<String>,
5858
pub integ_keysize: Option<u32>,
5959
pub prf_alg: Option<String>,
6060
pub dh_group: Option<String>,
6161
pub esn: Option<u32>,
62-
pub bytes_in: u64,
63-
pub packets_in: u64,
62+
pub bytes_in: Option<u64>,
63+
pub packets_in: Option<u64>,
6464
pub use_in: Option<u64>,
65-
pub bytes_out: u64,
66-
pub packets_out: u64,
65+
pub bytes_out: Option<u64>,
66+
pub packets_out: Option<u64>,
6767
pub use_out: Option<u64>,
6868
pub rekey_time: Option<u64>,
69-
pub life_time: u64,
70-
pub install_time: u64,
69+
pub life_time: Option<u64>,
70+
pub install_time: Option<u64>,
7171
pub local_ts: Vec<String>,
7272
pub remote_ts: Vec<String>,
7373
}

0 commit comments

Comments
 (0)