Cria ou Atualizações um logger.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}?api-version=2022-08-01
Parâmetros do URI
Name |
Em |
Necessário |
Tipo |
Description |
loggerId
|
path |
True
|
string
|
Identificador de logger. Tem de ser exclusivo na instância do serviço Gestão de API.
Regex pattern: ^[^*#&+:<>?]+$
|
resourceGroupName
|
path |
True
|
string
|
O nome do grupo de recursos. O nome não é sensível a maiúsculas e minúsculas.
|
serviceName
|
path |
True
|
string
|
O nome do serviço Gestão de API.
Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$
|
subscriptionId
|
path |
True
|
string
|
O ID da subscrição de destino.
|
api-version
|
query |
True
|
string
|
A versão da API a utilizar para esta operação.
|
Name |
Necessário |
Tipo |
Description |
If-Match
|
|
string
|
ETag da Entidade. Não é necessário ao criar uma entidade, mas é necessário ao atualizar uma entidade.
|
Corpo do Pedido
Name |
Necessário |
Tipo |
Description |
properties.loggerType
|
True
|
LoggerType
|
Tipo de logger.
|
properties.credentials
|
|
object
|
O nome e SendRule cadeia de ligação do hub de eventos do logger azureEventHub.
Chave de instrumentação para o logger applicationInsights.
|
properties.description
|
|
string
|
Descrição do logger.
|
properties.isBuffered
|
|
boolean
|
Se os registos são colocados na memória intermédia no logger antes da publicação. Assume-se que a predefinição é verdadeira.
|
properties.resourceId
|
|
string
|
ID de Recurso do Azure de um destino de registo (recurso do Hub de Eventos do Azure ou recurso do Aplicação Azure Insights).
|
Respostas
Name |
Tipo |
Description |
200 OK
|
LoggerContract
|
O logger existente foi atualizado com êxito.
Headers
ETag: string
|
201 Created
|
LoggerContract
|
O logger foi criado com êxito.
Headers
ETag: string
|
Other Status Codes
|
ErrorResponse
|
Resposta de erro que descreve o motivo pela qual a operação falhou.
|
Segurança
azure_auth
Fluxo OAuth2 do Azure Active Directory.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Name |
Description |
user_impersonation
|
representar a sua conta de utilizador
|
Exemplos
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
}
}
Definições
ErrorFieldContract
Contrato de Campo de Erro.
Name |
Tipo |
Description |
code
|
string
|
Código de erro de nível de propriedade.
|
message
|
string
|
Representação legível por humanos do erro ao nível da propriedade.
|
target
|
string
|
Nome da propriedade.
|
ErrorResponse
Resposta do Erro.
Name |
Tipo |
Description |
error.code
|
string
|
Código de erro definido pelo serviço. Este código serve como um subestado para o código de erro HTTP especificado na resposta.
|
error.details
|
ErrorFieldContract[]
|
A lista de campos inválidos enviados no pedido, em caso de erro de validação.
|
error.message
|
string
|
Representação legível por humanos do erro.
|
LoggerContract
Detalhes do logger.
Name |
Tipo |
Description |
id
|
string
|
ID de recurso completamente qualificado para o recurso. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
|
name
|
string
|
O nome do recurso
|
properties.credentials
|
object
|
O nome e SendRule cadeia de ligação do hub de eventos do logger azureEventHub.
Chave de instrumentação para o logger applicationInsights.
|
properties.description
|
string
|
Descrição do logger.
|
properties.isBuffered
|
boolean
|
Se os registos são colocados na memória intermédia no logger antes da publicação. Assume-se que a predefinição é verdadeira.
|
properties.loggerType
|
LoggerType
|
Tipo de logger.
|
properties.resourceId
|
string
|
ID de Recurso do Azure de um destino de registo (recurso do Hub de Eventos do Azure ou recurso do Aplicação Azure Insights).
|
type
|
string
|
O tipo do recurso. Por exemplo, "Microsoft.Compute/virtualMachines" ou "Microsoft.Storage/storageAccounts"
|
LoggerType
Tipo de logger.
Name |
Tipo |
Description |
applicationInsights
|
string
|
Aplicação Azure Informações como destino de registo.
|
azureEventHub
|
string
|
Hub de Eventos do Azure como destino de registo.
|
azureMonitor
|
string
|
Azure Monitor
|