This policy automatically deploys diagnostic settings for Azure Public IP Addresses to a defined Log Analytics Workspace.
$definition = New-AzPolicyDefinition -Name "apply-diagnostic-setting-publicipaddresses-loganalytics" -DisplayName "Apply Diagnostic Settings for Azure Public IP Addresses to a Log Analytics Workspace" -description "This policy automatically deploys diagnostic settings for Azure Public IP Addresses to point to a Log Analytics Workspace." -Policy 'https://raw.githubusercontent.com/Azure/azure-policy/master/samples/Monitoring/apply-diagnostic-setting-publicipaddresses-loganalytics/azurepolicy.rules.json' -Parameter 'https://raw.githubusercontent.com/Azure/azure-policy/master/samples/Monitoring/apply-diagnostic-setting-publicipaddresses-loganalytics/azurepolicy.parameters.json' -Mode Indexed
$definition
$assignment = New-AzPolicyAssignment -Name <assignmentname> -Scope <scope> -profileName <profileName> -logAnalytics <logAnalytics> -azureRegions <azureRegions> -metricsEnabled <metricsEnabled> -logsEnabled <logsEnabled> -PolicyDefinition $definition
$assignment
az policy definition create --name 'apply-diagnostic-setting-publicipaddresses-loganalytics' --display-name 'Apply Diagnostic Settings for Azure Public IP Addresses to a Log Analytics Workspace' --description 'This policy automatically deploys diagnostic settings to Azure Public IP Addresses supporting a Log Analytics Workspace.' --rules 'https://raw.githubusercontent.com/Azure/azure-policy/master/samples/Monitoring/apply-diagnostic-setting-publicipaddresses-loganalytics/azurepolicy.rules.json' --params 'https://raw.githubusercontent.com/Azure/azure-policy/master/samples/Monitoring/apply-diagnostic-setting-publicipaddresses-loganalytics/azurepolicy.parameters.json' --mode Indexed
az policy assignment create --name <assignmentname> --scope <scope> --params "{ 'profileName': { 'value': '<profileName>' }, 'logAnalytics': { 'value': '<logAnalytics>' },'azureRegions': { 'value': '<azureRegions>' },'metricsEnabled': { 'value': '<metricsEnabled>' },'logsEnabled': { 'value': '<logsEnabled>' } }" --policy "apply-diagnostic-setting-publicipaddresses-loganalytics"