New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[azure_network_watcher_vnet] Initial release of the azure network watcher vnet #9680
base: main
Are you sure you want to change the base?
[azure_network_watcher_vnet] Initial release of the azure network watcher vnet #9680
Conversation
🚀 Benchmarks reportTo see the full report comment with |
Pinging @elastic/security-service-integrations (Team:Security-Service Integrations) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The PR description is following old format/template.
Please update PR description with repository PR template.
"type": "filebeat", | ||
"version": "8.12.0" | ||
}, | ||
"azure": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are also other fields that can be derived from the resourceId path. Please refer to this pipeline: https://github.com/elastic/integrations/blob/main/packages/azure/data_stream/activitylogs/elasticsearch/ingest_pipeline/azure-shared-pipeline.yml and its corresponding fields https://github.com/elastic/integrations/blob/main/packages/azure/data_stream/activitylogs/fields/package-fields.yml.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@brijesh-elastic @janvi-elastic What I mean by this is you can apply similar grok processor on flow_log.resource_id
field and extract azure*
fields such as subscription_id
, resource.group
, resource.provider
, etc,.
packages/azure_network_watcher_vnet/data_stream/log/_dev/test/system/test-default-config.yml
Show resolved
Hide resolved
packages/azure_network_watcher_vnet/data_stream/log/elasticsearch/ingest_pipeline/default.yml
Outdated
Show resolved
Hide resolved
packages/azure_network_watcher_vnet/data_stream/log/elasticsearch/ingest_pipeline/default.yml
Show resolved
Hide resolved
packages/azure_network_watcher_vnet/data_stream/log/elasticsearch/ingest_pipeline/default.yml
Outdated
Show resolved
Hide resolved
- foreach: | ||
field: json.flowRecords.flows | ||
tag: foreach_flowRecords_flow_to_append_protocol_to_network_iana_number | ||
if: ctx.json?.flowRecords?.flows instanceof List | ||
processor: | ||
foreach: | ||
tag: foreach_flowGroups_to_append_protocol_to_network_iana_number | ||
field: _ingest._value.flowGroups | ||
processor: | ||
foreach: | ||
field: _ingest._value.flowTuples | ||
processor: | ||
append: | ||
field: network.iana_number | ||
tag: append_protocol_to_network_iana_number | ||
value: '{{_ingest._value.protocol}}' | ||
allow_duplicates: false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since each of the below foreach
processors are doing the same thing, it might be efficient to create one script processor to avoid multiple iterations of the same object/list.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can add this processor in above script but for foreach processor which we have used to convert to long or IP we have to write foreach processor.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It maybe okay for now as its beta integration, but in the next enhancements before GA, this requires refactor. Essentially within your existing script
after receiving flowTupleParts
, you can check if it can be converted to long, only then append
into respective map, if not append error.message
.
Lines 163 to 164 in 64ed7ab
for (String flowTuple: flowTuplesList) { | |
String[] flowTupleParts = flowTuple.splitOnToken(','); |
packages/azure_network_watcher_vnet/data_stream/log/manifest.yml
Outdated
Show resolved
Hide resolved
💚 Build Succeeded
History
|
Quality Gate passedIssues Measures |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍🏼
Since this is similar to NSG PR, lets wait for Jamie's comments to be clarified: #9652 (comment) #9652 (comment)
Proposed commit message
Create New integration package azure_network_watcher_vnet.
Checklist
changelog.yml
file.How to test this PR locally
Screenshot