Logger - Create Or Update

Creates or Updates a logger.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}?api-version=2024-05-01

URI Parameters

Name In Required Type Description
loggerId
path True

string

Logger identifier. Must be unique in the API Management service instance.

Regex pattern: ^[^*#&+:<>?]+$

resourceGroupName
path True

string

The name of the resource group. The name is case insensitive.

serviceName
path True

string

The name of the API Management service.

Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

subscriptionId
path True

string

uuid

The ID of the target subscription. The value must be an UUID.

api-version
query True

string

The API version to use for this operation.

Request Header

Name Required Type Description
If-Match

string

ETag of the Entity. Not required when creating an entity, but required when updating an entity.

Request Body

Name Required Type Description
properties.loggerType True

LoggerType

Logger type.

properties.credentials

object

The name and SendRule connection string of the event hub for azureEventHub logger. Instrumentation key for applicationInsights logger.

properties.description

string

Logger description.

properties.isBuffered

boolean

Whether records are buffered in the logger before publishing. Default is assumed to be true.

properties.resourceId

string

Azure Resource Id of a log target (either Azure Event Hub resource or Azure Application Insights resource).

Responses

Name Type Description
200 OK

LoggerContract

The existing logger was successfully updated.

Headers

ETag: string

201 Created

LoggerContract

Logger was successfully created.

Headers

ETag: string

Other Status Codes

ErrorResponse

Error response describing why the operation failed.

Security

azure_auth

Azure Active Directory OAuth2 Flow.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

Examples

ApiManagementCreateAILogger
ApiManagementCreateEHLogger

ApiManagementCreateAILogger

Sample request

PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId?api-version=2024-05-01

{
  "properties": {
    "loggerType": "applicationInsights",
    "description": "adding a new logger",
    "credentials": {
      "instrumentationKey": "11................a1"
    }
  }
}

Sample response

{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/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/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/microsoft.insights/components/airesource"
  }
}
{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/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/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/eh1?api-version=2024-05-01

{
  "properties": {
    "loggerType": "azureEventHub",
    "description": "adding a new logger",
    "credentials": {
      "name": "hydraeventhub",
      "connectionString": "Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********="
    }
  }
}

Sample response

{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/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/00000000-0000-0000-0000-000000000000/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
  }
}

Definitions

Name Description
ErrorAdditionalInfo

The resource management error additional info.

ErrorDetail

The error detail.

ErrorResponse

Error response

LoggerContract

Logger details.

LoggerType

Logger type.

ErrorAdditionalInfo

The resource management error additional info.

Name Type Description
info

object

The additional info.

type

string

The additional info type.

ErrorDetail

The error detail.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

The error additional info.

code

string

The error code.

details

ErrorDetail[]

The error details.

message

string

The error message.

target

string

The error target.

ErrorResponse

Error response

Name Type Description
error

ErrorDetail

The error object.

LoggerContract

Logger details.

Name Type Description
id

string

Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

The name of the resource

properties.credentials

object

The name and SendRule connection string of the event hub for azureEventHub logger. Instrumentation key for applicationInsights logger.

properties.description

string

Logger description.

properties.isBuffered

boolean

Whether records are buffered in the logger before publishing. Default is assumed to be true.

properties.loggerType

LoggerType

Logger type.

properties.resourceId

string

Azure Resource Id of a log target (either Azure Event Hub resource or Azure Application Insights resource).

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

LoggerType

Logger type.

Name Type Description
applicationInsights

string

Azure Application Insights as log destination.

azureEventHub

string

Azure Event Hub as log destination.

azureMonitor

string

Azure Monitor