From 0b1d5e0c8d9534b8a09559ca816061aabd4c95ac Mon Sep 17 00:00:00 2001 From: Wangjunqi123 Date: Mon, 30 Oct 2023 10:01:37 +0800 Subject: [PATCH] Add judgment on node label elements --- server/processor/processor.go | 10 +++++----- server/utils/neo4jConvert.go | 34 +++++++++++++++++++++++++++++----- 2 files changed, 34 insertions(+), 10 deletions(-) diff --git a/server/processor/processor.go b/server/processor/processor.go index 4479e465..ed07493e 100644 --- a/server/processor/processor.go +++ b/server/processor/processor.go @@ -225,7 +225,7 @@ func (d *DataProcesser) Create_edge_entities(agent *agentmanager.Agent_m, edges Type: meta.EDGE_BELONG, Src: sub.ID, Dst: obj.ID, - Dir: true, + Dir: "direct", } edges.Add(belong_edge) @@ -241,7 +241,7 @@ func (d *DataProcesser) Create_edge_entities(agent *agentmanager.Agent_m, edges Type: meta.EDGE_BELONG, Src: sub.ID, Dst: obj.ID, - Dir: true, + Dir: "direct", } edges.Add(belong_edge) @@ -257,7 +257,7 @@ func (d *DataProcesser) Create_edge_entities(agent *agentmanager.Agent_m, edges Type: meta.EDGE_BELONG, Src: sub.ID, Dst: obj.ID, - Dir: true, + Dir: "direct", } edges.Add(belong_edge) @@ -274,7 +274,7 @@ func (d *DataProcesser) Create_edge_entities(agent *agentmanager.Agent_m, edges Type: meta.EDGE_SERVER, Src: sub.ID, Dst: obj.ID, - Dir: true, + Dir: "direct", } edges.Add(server_edge) @@ -314,7 +314,7 @@ func (d *DataProcesser) Create_edge_entities(agent *agentmanager.Agent_m, edges Type: edgetype, Src: peernode1.ID, Dst: peernode2.ID, - Dir: false, + Dir: "undirect", } edges.Add(peernet_edge) diff --git a/server/utils/neo4jConvert.go b/server/utils/neo4jConvert.go index 90ffb999..b82dd974 100644 --- a/server/utils/neo4jConvert.go +++ b/server/utils/neo4jConvert.go @@ -17,12 +17,34 @@ func Neo4jnodeToToponode(neo4jnode neo4j.Node) *meta.Node { DBID: neo4jnode.Id, ID: neo4jnode.Props["nid"].(string), Name: neo4jnode.Props["name"].(string), - Type: neo4jnode.Labels[0], - UUID: neo4jnode.Labels[1], Unixtime: neo4jnode.Props["unixtime"].(string), Metrics: metrics, } + switch neo4jnode.Labels[0] { + case meta.NODE_APP: + toponode.Type = neo4jnode.Labels[0] + toponode.UUID = neo4jnode.Labels[1] + case meta.NODE_HOST: + toponode.Type = neo4jnode.Labels[0] + toponode.UUID = neo4jnode.Labels[1] + case meta.NODE_NET: + toponode.Type = neo4jnode.Labels[0] + toponode.UUID = neo4jnode.Labels[1] + case meta.NODE_PROCESS: + toponode.Type = neo4jnode.Labels[0] + toponode.UUID = neo4jnode.Labels[1] + case meta.NODE_RESOURCE: + toponode.Type = neo4jnode.Labels[0] + toponode.UUID = neo4jnode.Labels[1] + case meta.NODE_THREAD: + toponode.Type = neo4jnode.Labels[0] + toponode.UUID = neo4jnode.Labels[1] + default: + toponode.Type = neo4jnode.Labels[1] + toponode.UUID = neo4jnode.Labels[0] + } + return toponode } @@ -35,11 +57,13 @@ func Neo4jrelaToToporela(neo4jrela neo4j.Relationship) *meta.Edge { toporela := &meta.Edge{ DBID: neo4jrela.Id, - Src: neo4jrela.StartId, - Dst: neo4jrela.EndId, + SrcID: neo4jrela.StartId, + DstID: neo4jrela.EndId, + Src: neo4jrela.Props["src"].(string), + Dst: neo4jrela.Props["dst"].(string), ID: neo4jrela.Props["rid"].(string), Type: neo4jrela.Type, - Dir: neo4jrela.Props["dir"].(bool), + Dir: neo4jrela.Props["dir"].(string), Unixtime: neo4jrela.Props["unixtime"].(string), Metrics: metrics, } -- Gitee