Vytvoří nebo Aktualizace protokolovacího nástroje.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}?api-version=2022-08-01
Parametry identifikátoru URI
Name |
V |
Vyžadováno |
Typ |
Description |
loggerId
|
path |
True
|
string
|
Identifikátor protokolovacího nástroje. Musí být jedinečný v instanci služby API Management.
Regex pattern: ^[^*#&+:<>?]+$
|
resourceGroupName
|
path |
True
|
string
|
Název skupiny prostředků. V názvu se rozlišují malá a velká písmena.
|
serviceName
|
path |
True
|
string
|
Název služby API Management.
Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$
|
subscriptionId
|
path |
True
|
string
|
ID cílového předplatného.
|
api-version
|
query |
True
|
string
|
Verze rozhraní API, která se má použít pro tuto operaci.
|
Name |
Vyžadováno |
Typ |
Description |
If-Match
|
|
string
|
Značka ETag entity. Nevyžaduje se při vytváření entity, ale vyžaduje se při aktualizaci entity.
|
Text požadavku
Name |
Vyžadováno |
Typ |
Description |
properties.loggerType
|
True
|
LoggerType
|
Typ protokolovacího nástroje.
|
properties.credentials
|
|
object
|
Název a SendRule připojovací řetězec centra událostí pro protokolovací nástroj azureEventHub.
Instrumentační klíč pro protokolovací nástroj applicationInsights.
|
properties.description
|
|
string
|
Popis protokolovacího nástroje.
|
properties.isBuffered
|
|
boolean
|
Určuje, jestli jsou záznamy v protokolovacím nástroji před publikováním uloženy do vyrovnávací paměti. Předpokládá se, že výchozí hodnota je true.
|
properties.resourceId
|
|
string
|
ID prostředku Azure cíle protokolu (prostředek centra událostí Azure nebo prostředek Aplikace Azure Insights)
|
Odpovědi
Name |
Typ |
Description |
200 OK
|
LoggerContract
|
Stávající protokolovací nástroj byl úspěšně aktualizován.
Headers
ETag: string
|
201 Created
|
LoggerContract
|
Protokolovací nástroj byl úspěšně vytvořen.
Headers
ETag: string
|
Other Status Codes
|
ErrorResponse
|
Chybová odpověď popisující, proč operace selhala.
|
Zabezpečení
azure_auth
Tok Azure Active Directory OAuth2
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Name |
Description |
user_impersonation
|
zosobnění uživatelského účtu
|
Příklady
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
}
}
Definice
ErrorFieldContract
Chyba Kontrakt pole.
Name |
Typ |
Description |
code
|
string
|
Kód chyby na úrovni vlastnosti.
|
message
|
string
|
Čitelné znázornění chyby na úrovni vlastností.
|
target
|
string
|
Název vlastnosti.
|
ErrorResponse
Odpověď na chybu.
Name |
Typ |
Description |
error.code
|
string
|
Kód chyby definované službou Tento kód slouží jako dílčí stav pro kód chyby HTTP zadaný v odpovědi.
|
error.details
|
ErrorFieldContract[]
|
Seznam neplatných polí se odešle v žádosti v případě chyby ověření.
|
error.message
|
string
|
Znázornění chyby čitelné pro člověka
|
LoggerContract
Podrobnosti o protokolovacím nástroji
Name |
Typ |
Description |
id
|
string
|
Plně kvalifikované ID prostředku. Příklad – /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
|
name
|
string
|
Název prostředku
|
properties.credentials
|
object
|
Název a SendRule připojovací řetězec centra událostí pro protokolovací nástroj azureEventHub.
Instrumentační klíč pro protokolovací nástroj applicationInsights.
|
properties.description
|
string
|
Popis protokolovacího nástroje.
|
properties.isBuffered
|
boolean
|
Určuje, jestli jsou záznamy v protokolovacím nástroji před publikováním uloženy do vyrovnávací paměti. Předpokládá se, že výchozí hodnota je true.
|
properties.loggerType
|
LoggerType
|
Typ protokolovacího nástroje.
|
properties.resourceId
|
string
|
ID prostředku Azure cíle protokolu (prostředek centra událostí Azure nebo prostředek Aplikace Azure Insights)
|
type
|
string
|
Typ prostředku. Například Microsoft.Compute/virtualMachines nebo Microsoft.Storage/storageAccounts
|
LoggerType
Typ protokolovacího nástroje.
Name |
Typ |
Description |
applicationInsights
|
string
|
Aplikace Azure Insights jako cíl protokolu.
|
azureEventHub
|
string
|
Azure Event Hub jako cíl protokolu.
|
azureMonitor
|
string
|
Azure Monitor
|