@@ -112,44 +112,39 @@ std::string falco_metrics::to_text(const falco::app::state& state)
112
112
prometheus_text += prometheus_metrics_converter.convert_metric_to_text_prometheus (metric_name_file_sha256, " falcosecurity" , " falco" , {{metric_name_file_sha256, item.second }});
113
113
}
114
114
115
- static bool is_first_call = true ;
116
115
static std::string ifinfo_json_escaped;
117
- if (is_first_call)
116
+ auto ipv4list = inspector->get_ifaddr_list ().get_ipv4_list ();
117
+ auto ipv6list = inspector->get_ifaddr_list ().get_ipv6_list ();
118
+ nlohmann::json ipv4_json;
119
+ nlohmann::json ipv6_json;
120
+ if (ipv4list)
118
121
{
119
- is_first_call = false ;
120
- auto ipv4list = inspector->get_ifaddr_list ().get_ipv4_list ();
121
- auto ipv6list = inspector->get_ifaddr_list ().get_ipv6_list ();
122
- nlohmann::json ipv4_json;
123
- nlohmann::json ipv6_json;
124
- if (ipv4list)
122
+ for (const auto & item : *ipv4list)
125
123
{
126
- for ( const auto & item : *ipv4list )
124
+ if ( item. m_name == " lo " )
127
125
{
128
- if (item.m_name == " lo" )
129
- {
130
- continue ;
131
- }
132
- ipv4_json[item.m_name ] = falco::utils::network::ipv4addr_to_string (item.m_addr );
126
+ continue ;
133
127
}
128
+ ipv4_json[item.m_name ] = item.addr_to_string ();
134
129
}
130
+ }
135
131
136
- if (ipv6list)
132
+ if (ipv6list)
133
+ {
134
+ for (const auto & item : *ipv6list)
137
135
{
138
- for ( const auto & item : *ipv6list )
136
+ if ( item. m_name == " lo " )
139
137
{
140
- if (item.m_name == " lo" )
141
- {
142
- continue ;
143
- }
144
- ipv6_json[item.m_name ] = falco::utils::network::ipv6addr_to_string (item.m_net );
138
+ continue ;
145
139
}
140
+ ipv6_json[item.m_name ] = item.addr_to_string ();
146
141
}
147
- nlohmann::json ifinfo_json;
148
- ifinfo_json[" ipv4" ] = ipv4_json;
149
- ifinfo_json[" ipv6" ] = ipv6_json;
150
- ifinfo_json_escaped = ifinfo_json.dump ();
151
142
}
152
- prometheus_text += prometheus_metrics_converter.convert_metric_to_text_prometheus (" host_ifinfo" , " falcosecurity" , " falco" , {{" host_ifinfo" , ifinfo_json_escaped}});
143
+ nlohmann::json ifinfo_json;
144
+ ifinfo_json[" ipv4" ] = ipv4_json;
145
+ ifinfo_json[" ipv6" ] = ipv6_json;
146
+ ifinfo_json_escaped = ifinfo_json.dump ();
147
+ prometheus_text += prometheus_metrics_converter.convert_metric_to_text_prometheus (" host_ifinfo_json" , " falcosecurity" , " falco" , {{" host_ifinfo_json" , ifinfo_json_escaped}});
153
148
#endif
154
149
155
150
for (const std::string& source: inspector->event_sources ())
0 commit comments