Packet Capture
Information about packet capture session. Uses Azure REST API version 2024-05-01. In version 2.x of the Azure Native provider, it used API version 2023-02-01. Other available API versions: 2018-06-01, 2018-07-01, 2018-08-01, 2018-10-01, 2018-11-01, 2018-12-01, 2019-02-01, 2019-04-01, 2019-06-01, 2019-07-01, 2019-08-01, 2019-09-01, 2019-11-01, 2019-12-01, 2020-03-01, 2020-04-01, 2020-05-01, 2020-06-01, 2020-07-01, 2020-08-01, 2020-11-01, 2021-02-01, 2021-03-01, 2021-05-01, 2021-08-01, 2022-01-01, 2022-05-01, 2022-07-01, 2022-09-01, 2022-11-01, 2023-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native network [ApiVersion]
. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.
Example Usage
Create packet capture
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var packetCapture = new AzureNative.Network.PacketCapture("packetCapture", new()
{
BytesToCapturePerPacket = 10000,
Filters = new[]
{
new AzureNative.Network.Inputs.PacketCaptureFilterArgs
{
LocalIPAddress = "10.0.0.4",
LocalPort = "80",
Protocol = AzureNative.Network.PcProtocol.TCP,
},
},
NetworkWatcherName = "nw1",
PacketCaptureName = "pc1",
ResourceGroupName = "rg1",
StorageLocation = new AzureNative.Network.Inputs.PacketCaptureStorageLocationArgs
{
FilePath = "D:\\capture\\pc1.cap",
StorageId = "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore",
StoragePath = "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap",
},
Target = "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1",
TimeLimitInSeconds = 100,
TotalBytesPerSession = 100000,
});
});
package main
import (
network "github.com/pulumi/pulumi-azure-native-sdk/network/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := network.NewPacketCapture(ctx, "packetCapture", &network.PacketCaptureArgs{
BytesToCapturePerPacket: pulumi.Float64(10000),
Filters: network.PacketCaptureFilterArray{
&network.PacketCaptureFilterArgs{
LocalIPAddress: pulumi.String("10.0.0.4"),
LocalPort: pulumi.String("80"),
Protocol: pulumi.String(network.PcProtocolTCP),
},
},
NetworkWatcherName: pulumi.String("nw1"),
PacketCaptureName: pulumi.String("pc1"),
ResourceGroupName: pulumi.String("rg1"),
StorageLocation: &network.PacketCaptureStorageLocationArgs{
FilePath: pulumi.String("D:\\capture\\pc1.cap"),
StorageId: pulumi.String("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore"),
StoragePath: pulumi.String("https://mytestaccountname.blob.core.windows.net/capture/pc1.cap"),
},
Target: pulumi.String("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1"),
TimeLimitInSeconds: pulumi.Int(100),
TotalBytesPerSession: pulumi.Float64(100000),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.PacketCapture;
import com.pulumi.azurenative.network.PacketCaptureArgs;
import com.pulumi.azurenative.network.inputs.PacketCaptureFilterArgs;
import com.pulumi.azurenative.network.inputs.PacketCaptureStorageLocationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var packetCapture = new PacketCapture("packetCapture", PacketCaptureArgs.builder()
.bytesToCapturePerPacket(10000)
.filters(PacketCaptureFilterArgs.builder()
.localIPAddress("10.0.0.4")
.localPort("80")
.protocol("TCP")
.build())
.networkWatcherName("nw1")
.packetCaptureName("pc1")
.resourceGroupName("rg1")
.storageLocation(PacketCaptureStorageLocationArgs.builder()
.filePath("D:\\capture\\pc1.cap")
.storageId("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore")
.storagePath("https://mytestaccountname.blob.core.windows.net/capture/pc1.cap")
.build())
.target("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1")
.timeLimitInSeconds(100)
.totalBytesPerSession(100000)
.build());
}
}
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:network:PacketCapture pc1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}
Properties
The Azure API version of the resource.
Number of bytes captured per packet, the remaining bytes are truncated.
The capture setting holds the 'FileCount', 'FileSizeInBytes', 'SessionTimeLimitInSeconds' values.
This continuous capture is a nullable boolean, which can hold 'null', 'true' or 'false' value. If we do not pass this parameter, it would be consider as 'null', default value is 'null'.
A list of packet capture filters.
The provisioning state of the packet capture session.
A list of AzureVMSS instances which can be included or excluded to run packet capture. If both included and excluded are empty, then the packet capture will run on all instances of AzureVMSS.
The storage location for a packet capture session.
Target type of the resource provided.
Maximum duration of the capture session in seconds.
Maximum size of the capture output.