Membuat atau Memperbarui logger.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}?api-version=2022-08-01
Parameter URI
Nama |
Dalam |
Diperlukan |
Jenis |
Deskripsi |
loggerId
|
path |
True
|
string
|
Pengidentifikasi pencatat. Harus unik dalam instans layanan API Management.
Regex pattern: ^[^*#&+:<>?]+$
|
resourceGroupName
|
path |
True
|
string
|
Nama grup sumber daya. Nama tidak peka huruf besar/kecil.
|
serviceName
|
path |
True
|
string
|
Nama layanan API Management.
Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$
|
subscriptionId
|
path |
True
|
string
|
ID langganan target.
|
api-version
|
query |
True
|
string
|
Versi API yang digunakan untuk operasi ini.
|
Nama |
Diperlukan |
Jenis |
Deskripsi |
If-Match
|
|
string
|
ETag Entitas. Tidak diperlukan saat membuat entitas, tetapi diperlukan saat memperbarui entitas.
|
Isi Permintaan
Nama |
Diperlukan |
Jenis |
Deskripsi |
properties.loggerType
|
True
|
LoggerType
|
Jenis pencatat.
|
properties.credentials
|
|
object
|
Nama dan string koneksi SendRule dari pusat aktivitas untuk pencatat azureEventHub.
Kunci instrumentasi untuk pencatat applicationInsights.
|
properties.description
|
|
string
|
Deskripsi pencatat.
|
properties.isBuffered
|
|
boolean
|
Apakah rekaman di-buffer di pencatat sebelum diterbitkan. Default diasumsikan benar.
|
properties.resourceId
|
|
string
|
Id Sumber Daya Azure dari target log (baik sumber daya Azure Event Hub atau sumber daya Azure Application Insights).
|
Respons
Nama |
Jenis |
Deskripsi |
200 OK
|
LoggerContract
|
Pencatat yang ada berhasil diperbarui.
Headers
ETag: string
|
201 Created
|
LoggerContract
|
Pencatat berhasil dibuat.
Headers
ETag: string
|
Other Status Codes
|
ErrorResponse
|
Respons kesalahan yang menjelaskan mengapa operasi gagal.
|
Keamanan
azure_auth
Alur OAuth2 Azure Active Directory.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Nama |
Deskripsi |
user_impersonation
|
meniru akun pengguna Anda
|
Contoh
ApiManagementCreateAILogger
Sample Request
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId?api-version=2022-08-01
{
"properties": {
"loggerType": "applicationInsights",
"description": "adding a new logger",
"credentials": {
"instrumentationKey": "11................a1"
}
}
}
import com.azure.resourcemanager.apimanagement.models.LoggerType;
import java.util.HashMap;
import java.util.Map;
/** Samples for Logger CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateAILogger.json
*/
/**
* Sample code: ApiManagementCreateAILogger.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateAILogger(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.loggers()
.define("loggerId")
.withExistingService("rg1", "apimService1")
.withLoggerType(LoggerType.APPLICATION_INSIGHTS)
.withDescription("adding a new logger")
.withCredentials(mapOf("instrumentationKey", "fakeTokenPlaceholder"))
.create();
}
// Use "Map.of" if available
@SuppressWarnings("unchecked")
private static <T> Map<String, T> mapOf(Object... inputs) {
Map<String, T> map = new HashMap<>();
for (int i = 0; i < inputs.length; i += 2) {
String key = (String) inputs[i];
T value = (T) inputs[i + 1];
map.put(key, value);
}
return map;
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_ai_logger.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.logger.create_or_update(
resource_group_name="rg1",
service_name="apimService1",
logger_id="loggerId",
parameters={
"properties": {
"credentials": {"instrumentationKey": "11................a1"},
"description": "adding a new logger",
"loggerType": "applicationInsights",
}
},
)
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateAILogger.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateAILogger.json
func ExampleLoggerClient_CreateOrUpdate_apiManagementCreateAiLogger() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewLoggerClient().CreateOrUpdate(ctx, "rg1", "apimService1", "loggerId", armapimanagement.LoggerContract{
Properties: &armapimanagement.LoggerContractProperties{
Description: to.Ptr("adding a new logger"),
Credentials: map[string]*string{
"instrumentationKey": to.Ptr("11................a1"),
},
LoggerType: to.Ptr(armapimanagement.LoggerTypeApplicationInsights),
},
}, &armapimanagement.LoggerClientCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.LoggerContract = armapimanagement.LoggerContract{
// Name: to.Ptr("loggerId"),
// Type: to.Ptr("Microsoft.ApiManagement/service/loggers"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId"),
// Properties: &armapimanagement.LoggerContractProperties{
// Credentials: map[string]*string{
// "instrumentationKey": to.Ptr("{{5a.......2a}}"),
// },
// IsBuffered: to.Ptr(false),
// LoggerType: to.Ptr(armapimanagement.LoggerTypeApplicationInsights),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates or Updates a logger.
*
* @summary Creates or Updates a logger.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateAILogger.json
*/
async function apiManagementCreateAiLogger() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const loggerId = "loggerId";
const parameters = {
description: "adding a new logger",
credentials: { instrumentationKey: "11................a1" },
loggerType: "applicationInsights",
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.logger.createOrUpdate(
resourceGroupName,
serviceName,
loggerId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample Response
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId",
"type": "Microsoft.ApiManagement/service/loggers",
"name": "loggerId",
"properties": {
"loggerType": "applicationInsights",
"description": null,
"credentials": {
"instrumentationKey": "{{5a.......2a}}"
},
"isBuffered": false,
"resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/microsoft.insights/components/airesource"
}
}
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId",
"type": "Microsoft.ApiManagement/service/loggers",
"name": "loggerId",
"properties": {
"loggerType": "applicationInsights",
"description": null,
"credentials": {
"instrumentationKey": "{{5a.......2a}}"
},
"isBuffered": false
}
}
ApiManagementCreateEHLogger
Sample Request
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/eh1?api-version=2022-08-01
{
"properties": {
"loggerType": "azureEventHub",
"description": "adding a new logger",
"credentials": {
"name": "hydraeventhub",
"connectionString": "Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********="
}
}
}
import com.azure.resourcemanager.apimanagement.models.LoggerType;
import java.util.HashMap;
import java.util.Map;
/** Samples for Logger CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateEHLogger.json
*/
/**
* Sample code: ApiManagementCreateEHLogger.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateEHLogger(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.loggers()
.define("eh1")
.withExistingService("rg1", "apimService1")
.withLoggerType(LoggerType.AZURE_EVENT_HUB)
.withDescription("adding a new logger")
.withCredentials(
mapOf(
"name",
"hydraeventhub",
"connectionString",
"Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********="))
.create();
}
// Use "Map.of" if available
@SuppressWarnings("unchecked")
private static <T> Map<String, T> mapOf(Object... inputs) {
Map<String, T> map = new HashMap<>();
for (int i = 0; i < inputs.length; i += 2) {
String key = (String) inputs[i];
T value = (T) inputs[i + 1];
map.put(key, value);
}
return map;
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_eh_logger.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.logger.create_or_update(
resource_group_name="rg1",
service_name="apimService1",
logger_id="eh1",
parameters={
"properties": {
"credentials": {
"connectionString": "Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********=",
"name": "hydraeventhub",
},
"description": "adding a new logger",
"loggerType": "azureEventHub",
}
},
)
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateEHLogger.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateEHLogger.json
func ExampleLoggerClient_CreateOrUpdate_apiManagementCreateEhLogger() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewLoggerClient().CreateOrUpdate(ctx, "rg1", "apimService1", "eh1", armapimanagement.LoggerContract{
Properties: &armapimanagement.LoggerContractProperties{
Description: to.Ptr("adding a new logger"),
Credentials: map[string]*string{
"name": to.Ptr("hydraeventhub"),
"connectionString": to.Ptr("Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********="),
},
LoggerType: to.Ptr(armapimanagement.LoggerTypeAzureEventHub),
},
}, &armapimanagement.LoggerClientCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.LoggerContract = armapimanagement.LoggerContract{
// Name: to.Ptr("eh1"),
// Type: to.Ptr("Microsoft.ApiManagement/service/loggers"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/eh1"),
// Properties: &armapimanagement.LoggerContractProperties{
// Description: to.Ptr("adding a new logger"),
// Credentials: map[string]*string{
// "connectionString": to.Ptr("{{Logger-Credentials-5f28745bbebeeb13cc3f7301}}"),
// },
// IsBuffered: to.Ptr(true),
// LoggerType: to.Ptr(armapimanagement.LoggerTypeAzureEventHub),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates or Updates a logger.
*
* @summary Creates or Updates a logger.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateEHLogger.json
*/
async function apiManagementCreateEhLogger() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const loggerId = "eh1";
const parameters = {
description: "adding a new logger",
credentials: {
name: "hydraeventhub",
connectionString:
"Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********=",
},
loggerType: "azureEventHub",
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.logger.createOrUpdate(
resourceGroupName,
serviceName,
loggerId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample Response
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/eh1",
"type": "Microsoft.ApiManagement/service/loggers",
"name": "eh1",
"properties": {
"loggerType": "azureEventHub",
"description": "adding a new logger",
"credentials": {
"connectionString": "{{Logger-Credentials-5f28745bbebeeb13cc3f7301}}"
},
"isBuffered": true
}
}
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/eh1",
"type": "Microsoft.ApiManagement/service/loggers",
"name": "eh1",
"properties": {
"loggerType": "azureEventHub",
"description": "adding a new logger",
"credentials": {
"connectionString": "{{Logger-Credentials-5f28745bbebeeb13cc3f7301}}"
},
"isBuffered": true
}
}
Definisi
ErrorFieldContract
Kontrak Bidang Kesalahan.
Nama |
Jenis |
Deskripsi |
code
|
string
|
Kode kesalahan tingkat properti.
|
message
|
string
|
Representasi kesalahan tingkat properti yang dapat dibaca manusia.
|
target
|
string
|
Nama properti.
|
ErrorResponse
Respons Kesalahan.
Nama |
Jenis |
Deskripsi |
error.code
|
string
|
Kode kesalahan yang ditentukan layanan. Kode ini berfungsi sebagai sub-status untuk kode kesalahan HTTP yang ditentukan dalam respons.
|
error.details
|
ErrorFieldContract[]
|
Daftar bidang yang tidak valid dikirim dalam permintaan, jika terjadi kesalahan validasi.
|
error.message
|
string
|
Representasi kesalahan yang dapat dibaca manusia.
|
LoggerContract
Detail pencatat.
Nama |
Jenis |
Deskripsi |
id
|
string
|
ID sumber daya yang sepenuhnya memenuhi syarat untuk sumber daya. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
|
name
|
string
|
Nama sumber daya.
|
properties.credentials
|
object
|
Nama dan string koneksi SendRule dari pusat aktivitas untuk pencatat azureEventHub.
Kunci instrumentasi untuk pencatat applicationInsights.
|
properties.description
|
string
|
Deskripsi pencatat.
|
properties.isBuffered
|
boolean
|
Apakah rekaman di-buffer di pencatat sebelum diterbitkan. Default diasumsikan benar.
|
properties.loggerType
|
LoggerType
|
Jenis pencatat.
|
properties.resourceId
|
string
|
Id Sumber Daya Azure dari target log (baik sumber daya Azure Event Hub atau sumber daya Azure Application Insights).
|
type
|
string
|
Jenis sumber daya. Misalnya "Microsoft.Compute/virtualMachines" atau "Microsoft.Storage/storageAccounts"
|
LoggerType
Jenis pencatat.
Nama |
Jenis |
Deskripsi |
applicationInsights
|
string
|
Azure Application Insights sebagai tujuan log.
|
azureEventHub
|
string
|
Azure Event Hub sebagai tujuan log.
|
azureMonitor
|
string
|
Azure Monitor
|