mirror of
https://github.com/netbirdio/netbird.git
synced 2025-05-01 23:04:56 +02:00
Add posture checks metrics report (#1603)
This commit is contained in:
parent
8d9e1fed5f
commit
d65602f904
@ -174,6 +174,8 @@ func (w *Worker) generateProperties() properties {
|
|||||||
rules int
|
rules int
|
||||||
rulesProtocol map[string]int
|
rulesProtocol map[string]int
|
||||||
rulesDirection map[string]int
|
rulesDirection map[string]int
|
||||||
|
rulesWithSrcPostureChecks int
|
||||||
|
postureChecks int
|
||||||
groups int
|
groups int
|
||||||
routes int
|
routes int
|
||||||
routesWithRGGroups int
|
routesWithRGGroups int
|
||||||
@ -219,7 +221,12 @@ func (w *Worker) generateProperties() properties {
|
|||||||
rulesDirection["oneway"]++
|
rulesDirection["oneway"]++
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if len(policy.SourcePostureChecks) > 0 {
|
||||||
|
rulesWithSrcPostureChecks++
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
postureChecks += len(account.PostureChecks)
|
||||||
|
|
||||||
for _, user := range account.Users {
|
for _, user := range account.Users {
|
||||||
if user.IsServiceUser {
|
if user.IsServiceUser {
|
||||||
@ -286,6 +293,8 @@ func (w *Worker) generateProperties() properties {
|
|||||||
metricsProperties["active_peers_last_day"] = activePeersLastDay
|
metricsProperties["active_peers_last_day"] = activePeersLastDay
|
||||||
metricsProperties["user_peers"] = userPeers
|
metricsProperties["user_peers"] = userPeers
|
||||||
metricsProperties["rules"] = rules
|
metricsProperties["rules"] = rules
|
||||||
|
metricsProperties["rules_with_src_posture_checks"] = rulesWithSrcPostureChecks
|
||||||
|
metricsProperties["posture_checks"] = postureChecks
|
||||||
metricsProperties["groups"] = groups
|
metricsProperties["groups"] = groups
|
||||||
metricsProperties["routes"] = routes
|
metricsProperties["routes"] = routes
|
||||||
metricsProperties["routes_with_routing_groups"] = routesWithRGGroups
|
metricsProperties["routes_with_routing_groups"] = routesWithRGGroups
|
||||||
|
@ -6,6 +6,7 @@ import (
|
|||||||
nbdns "github.com/netbirdio/netbird/dns"
|
nbdns "github.com/netbirdio/netbird/dns"
|
||||||
"github.com/netbirdio/netbird/management/server"
|
"github.com/netbirdio/netbird/management/server"
|
||||||
nbpeer "github.com/netbirdio/netbird/management/server/peer"
|
nbpeer "github.com/netbirdio/netbird/management/server/peer"
|
||||||
|
"github.com/netbirdio/netbird/management/server/posture"
|
||||||
"github.com/netbirdio/netbird/route"
|
"github.com/netbirdio/netbird/route"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -62,6 +63,7 @@ func (mockDatasource) GetAllAccounts() []*server.Account {
|
|||||||
Protocol: server.PolicyRuleProtocolTCP,
|
Protocol: server.PolicyRuleProtocolTCP,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
SourcePostureChecks: []string{"1"},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Routes: map[string]*route.Route{
|
Routes: map[string]*route.Route{
|
||||||
@ -70,6 +72,26 @@ func (mockDatasource) GetAllAccounts() []*server.Account {
|
|||||||
PeerGroups: make([]string, 1),
|
PeerGroups: make([]string, 1),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
PostureChecks: []*posture.Checks{
|
||||||
|
{
|
||||||
|
ID: "1",
|
||||||
|
Name: "test",
|
||||||
|
Checks: posture.ChecksDefinition{
|
||||||
|
NBVersionCheck: &posture.NBVersionCheck{
|
||||||
|
MinVersion: "0.0.1",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ID: "2",
|
||||||
|
Name: "tes2",
|
||||||
|
Checks: posture.ChecksDefinition{
|
||||||
|
NBVersionCheck: &posture.NBVersionCheck{
|
||||||
|
MinVersion: "0.0.2",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
Users: map[string]*server.User{
|
Users: map[string]*server.User{
|
||||||
"1": {
|
"1": {
|
||||||
IsServiceUser: true,
|
IsServiceUser: true,
|
||||||
@ -246,4 +268,13 @@ func TestGenerateProperties(t *testing.T) {
|
|||||||
if properties["store_engine"] != server.FileStoreEngine {
|
if properties["store_engine"] != server.FileStoreEngine {
|
||||||
t.Errorf("expected JsonFile, got %s", properties["store_engine"])
|
t.Errorf("expected JsonFile, got %s", properties["store_engine"])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if properties["rules_with_src_posture_checks"] != 1 {
|
||||||
|
t.Errorf("expected 1 rules_with_src_posture_checks, got %d", properties["rules_with_src_posture_checks"])
|
||||||
|
}
|
||||||
|
|
||||||
|
if properties["posture_checks"] != 2 {
|
||||||
|
t.Errorf("expected 1 posture_checks, got %d", properties["posture_checks"])
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user