Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions entity-types/ext-access_point/definition.stg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -100,8 +100,8 @@ synthesis:
- attribute: deviceName
present: true
tags:
deviceName:
entityTagName: hostname
normalizedDeviceName:
entityTagName: normalizedName
observedMac:
entityTagName: mac
managementIp:
Expand Down
4 changes: 2 additions & 2 deletions entity-types/ext-network_device/definition.stg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ synthesis:
- attribute: deviceName
present: true
tags:
deviceName:
entityTagName: hostname
normalizedDeviceName:
entityTagName: normalizedName
observedMac:
entityTagName: mac
managementIp:
Expand Down
4 changes: 3 additions & 1 deletion entity-types/ext-port/definition.stg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,9 @@ synthesis:
present: true
tags:
deviceName:
entityTagName: deviceHostname # owning device name as the far-port match tier
entityTagName: deviceHostname # owning device name, case-preserved (display/golden tag)
normalizedDeviceName:
entityTagName: normalizedDeviceHostname # owning device name, normalized (far-port match tier)
observedMac:
entityTagName: deviceMac # owning device's MAC (best-effort)
managementIp:
Expand Down
4 changes: 2 additions & 2 deletions entity-types/ext-router/definition.stg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,8 @@ synthesis:
- attribute: deviceName
present: true
tags:
deviceName:
entityTagName: hostname
normalizedDeviceName:
entityTagName: normalizedName
observedMac:
entityTagName: mac
managementIp:
Expand Down
4 changes: 2 additions & 2 deletions entity-types/ext-switch/definition.stg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ synthesis:
- attribute: deviceName
present: true
tags:
deviceName:
entityTagName: hostname
normalizedDeviceName:
entityTagName: normalizedName
observedMac:
entityTagName: mac
managementIp:
Expand Down
4 changes: 2 additions & 2 deletions relationships/candidates/NETWORK_DEVICE.stg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ lookups:
field: mac
- tagKeys: ["ipAddress", "managementIp", "device_ip"]
field: managementIp
- tagKeys: ["hostname", "host.name"]
field: hostname
- tagKeys: ["normalizedName"]
field: normalizedName
onMatch:
onMultipleMatches: RELATE_ALL
onMiss:
Expand Down
4 changes: 2 additions & 2 deletions relationships/candidates/NETWORK_PORT.stg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ lookups:
tags:
matchingMode: ALL
predicates:
- tagKeys: ["deviceHostname"]
field: deviceHostname
- tagKeys: ["normalizedDeviceHostname"]
field: normalizedDeviceHostname
- tagKeys: ["port"]
field: port
onMatch:
Expand Down
232 changes: 220 additions & 12 deletions relationships/synthesis/EXT-NETWORK_DEVICE-to-EXT-NETWORK_DEVICE.stg.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
relationships:
- name: extSwitchConnectsToDevice
- name: extSwitchConnectsToDeviceByMac
version: "1"
origins: [Event API]
conditions:
Expand All @@ -8,6 +8,34 @@ relationships:
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false } # fallback: no neighbour port → no port chain
- { attribute: dstMac, present: true }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
source:
buildGuid:
account: { attribute: accountId }
domain: { value: EXT }
type: { value: SWITCH }
identifier:
fragments: [ { attribute: deviceName } ]
hashAlgorithm: FARM_HASH
target:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: mac, attribute: dstMac }

- name: extSwitchConnectsToDeviceByManagementIp
version: "1"
origins: [Event API]
conditions:
- { attribute: eventType, anyOf: ["NetworkTopology"] }
- { attribute: networkEntityType, anyOf: ["SWITCH"] }
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false }
- { attribute: dstIp, present: true }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
Expand All @@ -23,11 +51,35 @@ relationships:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: mac, attribute: dstMac }
- { field: managementIp, attribute: dstIp }
- { field: hostname, attribute: dstName }

- name: extRouterConnectsToDevice
- name: extSwitchConnectsToDeviceByNormalizedName
version: "1"
origins: [Event API]
conditions:
- { attribute: eventType, anyOf: ["NetworkTopology"] }
- { attribute: networkEntityType, anyOf: ["SWITCH"] }
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
source:
buildGuid:
account: { attribute: accountId }
domain: { value: EXT }
type: { value: SWITCH }
identifier:
fragments: [ { attribute: deviceName } ]
hashAlgorithm: FARM_HASH
target:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: normalizedName, attribute: dstName }

- name: extRouterConnectsToDeviceByMac
version: "1"
origins: [Event API]
conditions:
Expand All @@ -36,6 +88,34 @@ relationships:
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false }
- { attribute: dstMac, present: true }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
source:
buildGuid:
account: { attribute: accountId }
domain: { value: EXT }
type: { value: ROUTER }
identifier:
fragments: [ { attribute: deviceName } ]
hashAlgorithm: FARM_HASH
target:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: mac, attribute: dstMac }

- name: extRouterConnectsToDeviceByManagementIp
version: "1"
origins: [Event API]
conditions:
- { attribute: eventType, anyOf: ["NetworkTopology"] }
- { attribute: networkEntityType, anyOf: ["ROUTER"] }
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false }
- { attribute: dstIp, present: true }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
Expand All @@ -51,11 +131,35 @@ relationships:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: mac, attribute: dstMac }
- { field: managementIp, attribute: dstIp }
- { field: hostname, attribute: dstName }

- name: extAccessPointConnectsToDevice
- name: extRouterConnectsToDeviceByNormalizedName
version: "1"
origins: [Event API]
conditions:
- { attribute: eventType, anyOf: ["NetworkTopology"] }
- { attribute: networkEntityType, anyOf: ["ROUTER"] }
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
source:
buildGuid:
account: { attribute: accountId }
domain: { value: EXT }
type: { value: ROUTER }
identifier:
fragments: [ { attribute: deviceName } ]
hashAlgorithm: FARM_HASH
target:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: normalizedName, attribute: dstName }

- name: extAccessPointConnectsToDeviceByMac
version: "1"
origins: [Event API]
conditions:
Expand All @@ -64,6 +168,34 @@ relationships:
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false }
- { attribute: dstMac, present: true }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
source:
buildGuid:
account: { attribute: accountId }
domain: { value: EXT }
type: { value: ACCESS_POINT }
identifier:
fragments: [ { attribute: deviceName } ]
hashAlgorithm: FARM_HASH
target:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: mac, attribute: dstMac }

- name: extAccessPointConnectsToDeviceByManagementIp
version: "1"
origins: [Event API]
conditions:
- { attribute: eventType, anyOf: ["NetworkTopology"] }
- { attribute: networkEntityType, anyOf: ["ACCESS_POINT"] }
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false }
- { attribute: dstIp, present: true }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
Expand All @@ -79,11 +211,35 @@ relationships:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: mac, attribute: dstMac }
- { field: managementIp, attribute: dstIp }
- { field: hostname, attribute: dstName }

- name: extNetworkDeviceConnectsToDevice
- name: extAccessPointConnectsToDeviceByNormalizedName
version: "1"
origins: [Event API]
conditions:
- { attribute: eventType, anyOf: ["NetworkTopology"] }
- { attribute: networkEntityType, anyOf: ["ACCESS_POINT"] }
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
source:
buildGuid:
account: { attribute: accountId }
domain: { value: EXT }
type: { value: ACCESS_POINT }
identifier:
fragments: [ { attribute: deviceName } ]
hashAlgorithm: FARM_HASH
target:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: normalizedName, attribute: dstName }

- name: extNetworkDeviceConnectsToDeviceByMac
version: "1"
origins: [Event API]
conditions:
Expand All @@ -92,6 +248,34 @@ relationships:
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false }
- { attribute: dstMac, present: true }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
source:
buildGuid:
account: { attribute: accountId }
domain: { value: EXT }
type: { value: NETWORK_DEVICE }
identifier:
fragments: [ { attribute: deviceName } ]
hashAlgorithm: FARM_HASH
target:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: mac, attribute: dstMac }

- name: extNetworkDeviceConnectsToDeviceByManagementIp
version: "1"
origins: [Event API]
conditions:
- { attribute: eventType, anyOf: ["NetworkTopology"] }
- { attribute: networkEntityType, anyOf: ["NETWORK_DEVICE"] }
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false }
- { attribute: dstIp, present: true }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
Expand All @@ -107,6 +291,30 @@ relationships:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: mac, attribute: dstMac }
- { field: managementIp, attribute: dstIp }
- { field: hostname, attribute: dstName }

- name: extNetworkDeviceConnectsToDeviceByNormalizedName
version: "1"
origins: [Event API]
conditions:
- { attribute: eventType, anyOf: ["NetworkTopology"] }
- { attribute: networkEntityType, anyOf: ["NETWORK_DEVICE"] }
- { attribute: deviceName, present: true }
- { attribute: dstName, present: true }
- { attribute: dstPort, present: false }
relationship:
expires: PT75M
relationshipType: CONNECTS_TO
source:
buildGuid:
account: { attribute: accountId }
domain: { value: EXT }
type: { value: NETWORK_DEVICE }
identifier:
fragments: [ { attribute: deviceName } ]
hashAlgorithm: FARM_HASH
target:
lookupGuid:
candidateCategory: NETWORK_DEVICE
fields:
- { field: normalizedName, attribute: dstName }
Loading
Loading