Skip to content

Commit 49ab2df

Browse files
committed
added dashboard description and usecases
1 parent 790e091 commit 49ab2df

File tree

1 file changed

+138
-2
lines changed

1 file changed

+138
-2
lines changed

docs/integrations/microsoft-azure/azure-virtual-network.md

Lines changed: 138 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import useBaseUrl from '@docusaurus/useBaseUrl';
99

1010
<img src={useBaseUrl('img/integrations/microsoft-azure/azure-virtual-network.png')} alt="Thumbnail icon" width="50"/>
1111

12-
[Azure Virtual Network](https://learn.microsoft.com/en-us/azure/virtual-network/virtual-networks-overview) is a service that provides the fundamental building block for your private network in Azure enabling many types of Azure resources to securely communicate with each other, using the internet, and on-premises networks. This integration helps in monitoring the round trip time, failed pings, inbound dropped packets, and inbound bytes.
12+
[Azure Virtual Network](https://learn.microsoft.com/en-us/azure/virtual-network/virtual-networks-overview) is a service that provides the fundamental building block for your private network in Azure enabling many types of Azure resources to securely communicate with each other, using the internet, and on-premises networks. This integration helps in monitoring the outgoing and incoming traffic flows, dropped packets, bandwidth consumption, verifying network isolation and compliance.
1313

1414
## Logs and metric types
1515

@@ -95,9 +95,66 @@ You must explicitly enable diagnostic settings and network flow logs for each Vi
9595

9696
When you configure the event hubs source or HTTP source, plan your source category to ease the querying process. A hierarchical approach allows you to make use of wildcards. For example: `Azure/VirtualNetwork/Metrics` and `Azure/VirtualNetwork/Logs`.
9797

98+
### Configure field in field schema
99+
1. [**Classic UI**](/docs/get-started/sumo-logic-ui-classic). In the main Sumo Logic menu, select **Manage Data > Logs > Fields**. <br/>[**New UI**](/docs/get-started/sumo-logic-ui). In the top menu select **Configuration**, and then under **Logs** select **Fields**. You can also click the **Go To...** menu at the top of the screen and select **Fields**.
100+
1. Search for following fields:
101+
- `tenant_name`. This field is tagged at the collector level and users can get the tenant name using the instructions [here](https://learn.microsoft.com/en-us/azure/active-directory-b2c/tenant-management-read-tenant-name#get-your-tenant-name).
102+
- `location`. The region to which the resource name belongs to.
103+
- `subscription_id`. Id associated with a subscription where resource is present.
104+
- `resource_group`. The resource group name where the Azure resource is present.
105+
- `provider_name`. Azure resource provider name (for ex Microsoft.Storage).
106+
- `resource_type`. Azure resource type (for ex storageaccounts).
107+
- `resource_name`. The name of the resource (for ex storage account name).
108+
109+
3. Create the fields if it is not present. Refer to [create and manage fields](/docs/manage/fields/#manage-fields).
110+
111+
### Configure Field Extraction Rules
112+
113+
Create a Field Extraction Rule (FER) for Azure Virtual Network by following the instructions [here](/docs/manage/field-extractions/create-field-extraction-rule/).
114+
115+
* **Target Resource Extraction FER**
116+
117+
```sql
118+
Rule Name: AzureVirtualNetworkTargetResourceIdExtractionFER
119+
Applied at: Ingest Time
120+
Scope (Specific Data): tenant_name=* FlowLogFlowEvent
121+
```
122+
123+
```sql title="Parse Expression"
124+
json field=_raw "target_resource_id", "category", "flow_log_resource_id"
125+
| where category="FlowLogFlowEvent"
126+
| toUpperCase(target_resource_id) as target_resource_id
127+
| parse field=target_resource_id "/SUBSCRIPTIONS/*/RESOURCEGROUPS/*/PROVIDERS/*/*/*" as subscription_id, resource_group, provider_name, resource_type, resource_name
128+
| parse field=resource_name "*/SUBNETS/*" as vnet_name, subnet_name nodrop
129+
| parse field=flow_log_resource_id "NETWORKWATCHERS/NETWORKWATCHER_*/" as region_name nodrop
130+
| if (!isBlank(region_name), toLowerCase(region_name), "global") as location
131+
| if (resource_name matches /SUBNETS/, "SUBNETS", resource_type) as resource_type
132+
| fields subscription_id, location, provider_name, resource_group, resource_type, resource_name
133+
```
134+
135+
### Configure metric rules
136+
137+
* **Azure Observability Metadata Extraction Azure Virtual Network**
138+
139+
In case this rule is already exists then no need to create again.
140+
```sql
141+
Rule Name: AzureObservabilityMetadataExtractionAzureVirtualNetwork
142+
```
143+
144+
```sql title="Metric match expression"
145+
resourceId=/SUBSCRIPTIONS/*/RESOURCEGROUPS/*/PROVIDERS/MICROSOFT.NETWORK/VIRTUALNETWORKS/* tenant_name=*
146+
```
147+
| Fields extracted | Metric rule |
148+
|------------------|----------------|
149+
| subscription_id | $resourceId._1 |
150+
| resource_group | $resourceId._2 |
151+
| provider_name | MICROSOFT.NETWORK |
152+
| resource_type | VIRTUALNETWORKS |
153+
| resource_name | $resourceId._3 |
154+
98155
### Configure metrics collection
99156
100-
In this section, you will configure a pipeline for shipping metrics from Azure Monitor to an Event Hub, on to an Azure Function, and finally to an HTTP Source on a hosted collector in Sumo Logic.
157+
In this section, you will configure a pipeline for shipping metrics from Azure Monitor to an Event Hub, on to an Azure Function, and finally to an HTTP Source on a hosted collector in Sumo Logic. This step is required only for DDOS related metrics which comes after enabling DDOS protection in your virtual network.
101158
102159
1. Create hosted collector and tag `tenant_name` field. <br/><img src={useBaseUrl('img/integrations/microsoft-azure/Azure-Storage-Tag-Tenant-Name.png')} alt="Azure Storage Tag Tenant Name" style={{border: '1px solid gray'}} width="800" />
103160
2. [Configure an HTTP Source](/docs/send-data/collect-from-other-data-sources/azure-monitoring/collect-metrics-azure-monitor/#step-1-configure-an-http-source).
@@ -107,6 +164,7 @@ In this section, you will configure a pipeline for shipping metrics from Azure M
107164
* Select `AllMetrics`.
108165
* Use the Event hub namespace created by the ARM template in Step 2 above. You can create a new Event hub or use the one created by ARM template. You can use the default policy `RootManageSharedAccessKey` as the policy name.
109166
4. Tag the location field in the source with right location value.<br/><img src={useBaseUrl('img/integrations/microsoft-azure/Azure-Storage-Tag-Location.png')} alt="Azure Storage Tag Location" style={{border: '1px solid gray'}} width="500" />
167+
5. Enable the `DDOS protection` by following the instructions in Azure [documentation](https://learn.microsoft.com/en-us/azure/ddos-protection/manage-ddos-protection#enable-for-an-existing-virtual-network)
110168
111169
### Configure logs collection
112170
@@ -117,6 +175,10 @@ Before you begin configuring Virtual Network Flow Log collection, make sure the
117175
* Your Storage Account must be of type General-purpose v2 or Blob storage.
118176
* Your Network Security Group and Storage Account should be in same resource location.
119177
* You also need to have Microsoft Authorization/role Assignments/write permissions, so they should be a "User Access Administrator" or "Owner".
178+
* Location: The storage account must be in the same region as the virtual network.
179+
* Subscription: The storage account must be in the same subscription of the virtual network or in a subscription associated with the same Microsoft Entra tenant of the virtual network's subscription.
180+
* Performance tier: The storage account must be standard. Premium storage accounts aren't supported.
181+
* Self-managed key rotation: If you change or rotate the access keys to your storage account, virtual network flow logs stop working. To fix this problem, you must disable and then re-enable virtual network flow logs.
120182
121183
Resource group names should not contains underscores (`_`).
122184
@@ -162,6 +224,8 @@ Follow the steps detailed in the [Microsoft Azure Virtual Network documentation]
162224
163225
<img src={useBaseUrl('img/integrations/microsoft-azure/azure-virtual-network/virtualnetworkflowlogs.png')} alt="Configure Virtual Network Flow Logs" style={{border: '1px solid gray'}} width="800" />
164226
227+
If you have multiple virtual networks, you can configure virtual network flow logs using a [built-in policy](https://learn.microsoft.com/en-us/azure/network-watcher/vnet-flow-logs-policy#deploy-and-configure-virtual-network-flow-logs-using-a-built-in-policy) for each location and subscriptions.
228+
165229
#### Activity logs
166230
167231
To collect activity logs, follow the instructions [here](/docs/integrations/microsoft-azure/audit). Skip this step if you are already collecting activity logs for a subscription.
@@ -170,6 +234,8 @@ To collect activity logs, follow the instructions [here](/docs/integrations/micr
170234
Since this source includes logs from multiple regions, avoid tagging it with a location tag.
171235
:::
172236
237+
In order to find virtual networks without any flow log resource, you can audit flow logs configuration for virtual networks using a [built-in policy](https://learn.microsoft.com/en-us/azure/network-watcher/vnet-flow-logs-policy#audit-flow-logs-configuration-for-virtual-networks-using-a-built-in-policy).
238+
173239
174240
## Installing the Azure Virtual Network app
175241
@@ -185,6 +251,76 @@ import ViewDashboards from '../../reuse/apps/view-dashboards.md';
185251
186252
<ViewDashboards/>
187253
254+
### Overview
255+
256+
**Azure Virtual Network - Overview** dashboard provides details on network traffic flows, including accepted and rejected connections, geographical distribution, and data access patterns across different network boundaries.
257+
258+
Use this dashboard to:
259+
* Monitor the geographical distribution of source and destination traffic to identify unusual patterns or potential security threats.
260+
* Analyze the ratio of accepted to rejected flows and investigate top rejected destination ports to troubleshoot connectivity issues.
261+
* Compare current network usage with historical averages to detect anomalies or capacity planning needs.
262+
* Examine boundary crossing data access between North-South and East-West to optimize network segmentation and security policies.
263+
* Identify top resources by bytes sent and top TCP destination ports to prioritize network optimization efforts.
264+
265+
<img src={useBaseUrl('https://sumologic-app-data-v2.s3.amazonaws.com/dashboards/AzureVirtualNetwork/Azure-Virtual-Network-Overview.png')} alt="Azure Virtual Network - Overview" style={{border: '1px solid gray'}} width="800" />
266+
267+
### Accepted Traffic Flow
268+
269+
**Azure Virtual Network - Accepted Traffic Flow** dashboard provides details on incoming and outgoing network traffic, packet flows, and security group rules applied on traffic flows.
270+
271+
Use this dashboard to:
272+
* Visualize and compare incoming and outgoing traffic patterns across different geographical locations to identify potential network bottlenecks or unusual activity.
273+
* Monitor accepted flow traffic by resource name over time to detect spikes or drops in network usage that may indicate performance issues or security concerns.
274+
* Analyze the top accepted source and destination IP addresses and ports to understand common traffic patterns and potentially identify unauthorized or suspicious connections.
275+
* Review accepted flow traffic by resource name and ACL to ensure proper network security group rules are in place and functioning as expected.
276+
277+
<img src={useBaseUrl('https://sumologic-app-data-v2.s3.amazonaws.com/dashboards/AzureVirtualNetwork/Azure-Virtual-Network-Accepted-Traffic-Flow.png')} alt="Azure Virtual Network - Accepted Traffic Flow" style={{border: '1px solid gray'}} width="800" />
278+
279+
### Administrative Operations
280+
281+
**Azure Virtual Network - Administrative Operations** dashboard provides details on various administrative actions performed on Azure Virtual Network resources, including their operation types, status, and associated errors.
282+
283+
Use this dashboard to:
284+
* Monitor the distribution of operation types (Read, Write, Delete) to understand the most common actions being performed on your virtual network resources.
285+
* Identify potential issues by analyzing the distribution of operation statuses, focusing on failures and their causes.
286+
* Track user and application activity by examining the breakdown of operations per entity, helping to detect unusual patterns or unauthorized access.
287+
* Investigate specific errors by reviewing the top operations causing issues, allowing for quick troubleshooting and resolution.
288+
* Audit recent write and delete operations, ensuring compliance with organizational policies and detecting any suspicious activities.
289+
290+
<img src={useBaseUrl('https://sumologic-app-data-v2.s3.amazonaws.com/dashboards/AzureVirtualNetwork/Azure-Virtual-Network-Administrative-Operations.png')} alt="Azure Virtual Network - Administrative Operations" style={{border: '1px solid gray'}} width="800" />
291+
292+
### Policy and Recommendations
293+
294+
**Azure Virtual Network - Policy and Recommendations** dashboard provides details on policy events and recommendations for Azure Virtual Networks.
295+
296+
Use this dashboard to:
297+
* Monitor and analyze successful and failed policy events across your Azure Virtual Network resources.
298+
* Identify potential security risks by correlating failed policy events with specific resource groups and locations.
299+
* Review and act on recommendations to improve operational excellence and security of your Azure Virtual Network infrastructure.
300+
301+
<img src={useBaseUrl('https://sumologic-app-data-v2.s3.amazonaws.com/dashboards/AzureVirtualNetwork/Azure-Virtual-Network-Policy-and-Recommendations.png')} alt="Azure Virtual Network - Policy and Recommendations" style={{border: '1px solid gray'}} width="800" />
302+
303+
### DDOS Protection
304+
305+
**Azure Virtual Network - DDOS Protection** dashboard provides details on DDoS attacks and packet rates for virtual networks in Azure. Use this dashboard to:
306+
* Monitor the occurrence of DDoS attacks on your virtual networks and track their frequency over time.
307+
* Analyze the overall packet rate during DDoS attacks to assess the scale and impact of the attack.
308+
* Compare TCP and UDP packet rates during an attack to identify the type of DDoS attack and tailor your mitigation strategies accordingly.
309+
310+
<img src={useBaseUrl('https://sumologic-app-data-v2.s3.amazonaws.com/dashboards/AzureVirtualNetwork/Azure-Virtual-Network-DDOS-Protection.png')} alt="Azure Virtual Network - DDOS Protection" style={{border: '1px solid gray'}} width="800" />
311+
312+
### Denied Traffic Flow
313+
314+
**Azure Virtual Network - Denied Traffic Flow** dashboard provides details on blocked network traffic across your Azure virtual networks, including geographical distribution, resource-specific denials, and encryption status.
315+
316+
Use this dashboard to:
317+
* Identify geographical hotspots of denied traffic to pinpoint potential security threats or misconfigurations in specific regions.
318+
* Analyze denied traffic patterns by subnets, virtual networks, network interfaces to fine-tune your network security group rules and access control lists.
319+
* Monitor encryption-related traffic denials to ensure proper implementation of encryption policies across your virtual network.
320+
* Correlate spikes in denied traffic flow with specific source and destination IP addresses to investigate potential security incidents.
321+
322+
<img src={useBaseUrl('https://sumologic-app-data-v2.s3.amazonaws.com/dashboards/AzureVirtualNetwork/Azure-Virtual-Network-Denied-Traffic-Flow.png')} alt="Azure Virtual Network - Denied Traffic Flow" style={{border: '1px solid gray'}} width="800" />
323+
188324
## Upgrade/Downgrade the Azure Virtual Network app (optional)
189325
190326
import AppUpdate from '../../reuse/apps/app-update.md';

0 commit comments

Comments
 (0)