Event Grid 원본으로서의 Azure App Service

이 문서에서는 Azure App Service 이벤트의 속성과 스키마를 제공합니다. 이벤트 스키마에 대한 소개는 Azure Event Grid 이벤트 스키마를 참조하세요. 또한 이벤트 원본으로 Azure App Service를 사용하기 위한 빠른 시작 및 자습서의 목록을 제공합니다.

사용할 수 있는 이벤트 유형

Azure App Service는 다음과 같은 이벤트 유형을 내보냅니다.

이벤트 유형 설명
Microsoft.Web/sites.BackupOperationStarted 백업이 시작하면 트리거됨
Microsoft.Web/sites.BackupOperationCompleted 백업이 완료되면 트리거됨
Microsoft.Web/sites.BackupOperationFailed 백업이 실패하면 트리거됨
Microsoft.Web/sites.RestoreOperationStarted 백업으로부터 복원이 시작하면 트리거됨
Microsoft.Web/sites.RestoreOperationCompleted 백업으로부터 복원이 완료되면 트리거됨
Microsoft.Web/sites.RestoreOperationFailed 백업으로부터 복원이 실패하면 트리거됨
Microsoft.Web/sites.SlotSwapStarted 슬롯 교환이 시작하면 트리거됨
Microsoft.Web/sites.SlotSwapCompleted 슬롯 교환이 완료되면 트리거됨
Microsoft.Web/sites.SlotSwapFailed 슬롯 교환이 실패하면 트리거됨
Microsoft.Web/sites.SlotSwapWithPreviewStarted 미리 보기가 있는 슬롯 교환이 시작하면 트리거됨
Microsoft.Web/sites.SlotSwapWithPreviewCancelled 미리 보기가 있는 슬롯 교환이 취소되면 트리거됨
Microsoft.Web/sites.AppUpdated.Restarted 사이트가 다시 시작되면 트리거됨
Microsoft.Web/sites.AppUpdated.Stopped 사이트가 중지되면 트리거됨
Microsoft.Web/sites.AppUpdated.ChangedAppSettings 사이트의 앱 설정이 변경되면 트리거됨
Microsoft.Web/serverfarms.AppServicePlanUpdated App Service 계획이 업데이트되면 트리거됨

모든 이벤트에 공통된 속성

이벤트가 트리거될 때 Event Grid 서비스는 해당 이벤트에 대한 데이터를 구독 엔드포인트로 보냅니다. 이 섹션에는 각 이벤트에 대한 데이터가 어떻게 표시되는지 예가 포함되어 있습니다. 각 이벤트에는 다음과 같은 최상위 데이터가 있습니다.

속성 Type Description
source string 이벤트 원본에 대한 전체 리소스 경로입니다. 이 필드는 쓸 수 없습니다. Event Grid는 이 값을 제공합니다.
subject string 게시자가 정의한 이벤트 주체의 경로입니다.
type string 이 이벤트 원본에 대해 등록된 이벤트 유형 중 하나입니다.
time string 공급자의 UTC 시간을 기준으로 이벤트가 생성되는 시간입니다.
id string 이벤트에 대한 고유 식별자입니다.
data 개체 Blob Storage 이벤트 데이터입니다.
specversion string CloudEvents 스키마 사양 버전입니다.

예제 이벤트

BackupOperationStarted, BackupOperationCompleted, BackupOperationFailed

{
	"id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8",
	"source": "/subscriptions/<id>/resourceGroups/<rg>/providers/Microsoft.Web/sites/<site-name>",
	"subject": "/Microsoft.Web/sites/<site-name>",
	"type": "Microsoft.Web.BackupOperationStarted",
	"time": "2020-01-28T18:26:51.7194887Z",
	"data": {
		"appEventTypeDetail": {
			"action": "Started"
		},
		"name": "<site-name>",
		"clientRequestId": "None",
		"correlationRequestId": "None",
		"requestId": "292f499d-04ee-4066-994d-c2df57b99198",
		"address": "None",
		"verb": "None"
	},
	"specversion": "1.0"
}

데이터 개체에는 다음 속성이 포함되어 있습니다.

속성 Type 설명
appEventTypeDetail 개체 앱에 대한 작업의 세부 정보입니다.
action string 작업의 동작 유형입니다.
name string 이 이벤트가 발생한 웹 사이트의 이름입니다.
clientRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 클라이언트 요청 ID입니다.
correlationRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 상관 관계 요청 ID입니다.
requestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 요청 ID입니다.
address string 이 작업의 HTTP 요청 URL입니다.
verb string 이 작업의 HTTP 동사입니다.

RestoreOperationStarted, RestoreOperationCompleted, RestoreOperationFailed

{
	"id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8",
	"source": "/subscriptions/<id>/resourceGroups/<rg>/providers/Microsoft.Web/sites/<site-name>",
	"subject": "/Microsoft.Web/sites/<site-name>",
	"type": "Microsoft.Web.RestoreOperationStarted",
	"time": "2020-01-28T18:26:51.7194887Z",
	"data": {
		"appEventTypeDetail": {
			"action": "Started"
		},
		"name": "<site-name>",
		"clientRequestId": "None",
		"correlationRequestId": "None",
		"requestId": "292f499d-04ee-4066-994d-c2df57b99198",
		"address": "None",
		"verb": "POST"
	},
	"specversion": "1.0"
}

데이터 개체에는 다음 속성이 포함되어 있습니다.

속성 Type 설명
appEventTypeDetail 개체 앱에 대한 작업의 세부 정보입니다.
action string 작업의 동작 유형입니다.
name string 이 이벤트가 발생한 웹 사이트의 이름입니다.
clientRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 클라이언트 요청 ID입니다.
correlationRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 상관 관계 요청 ID입니다.
requestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 요청 ID입니다.
address string 이 작업의 HTTP 요청 URL입니다.
verb string 이 작업의 HTTP 동사입니다.

SlotSwapStarted, SlotSwapCompleted, SlotSwapFailed

{
	"id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8",
	"source": "/subscriptions/<id>/resourceGroups/<rg>/providers/Microsoft.Web/sites/<site-name>",
	"subject": "/Microsoft.Web/sites/<site-name>",
	"type": "Microsoft.Web.SlotSwapStarted",
	"time": "2020-01-28T18:26:51.7194887Z",
	"data": {
		"appEventTypeDetail": null,
		"name": "<site-name>",
		"clientRequestId": "922f4841-20d9-4dd6-8c5b-23f0d85e5592",
		"correlationRequestId": "9ac46505-2b8a-4e06-834c-05ffbe2e8c3a",
		"requestId": "765117aa-eaf8-4bd2-a644-1dbf69c7b0fd",
		"address": "/websystems/WebSites/web/subscriptions/<id>/webspaces/<webspace>/sites/<site-name>/slots?Command=SWAP&targetSlot=production",
		"verb": "POST",
		"sourceSlot": "staging",
		"targetSlot": "production"
	},
    "specversion": "1.0"
}

데이터 개체에는 다음 속성이 포함되어 있습니다.

속성 Type 설명
appEventTypeDetail 개체 앱에 대한 작업의 세부 정보입니다.
action string 작업의 동작 유형입니다.
name string 이 이벤트가 발생한 웹 사이트의 이름입니다.
clientRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 클라이언트 요청 ID입니다.
correlationRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 상관 관계 요청 ID입니다.
requestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 요청 ID입니다.
address string 이 작업의 HTTP 요청 URL입니다.
verb string 이 작업의 HTTP 동사입니다.
sourceSlot string 교환의 원본 슬롯입니다.

SlotSwapWithPreviewStarted, SlotSwapWithPreviewCancelled

{
	"id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8",
	"source": "/subscriptions/<id>/resourceGroups/<rg>/providers/Microsoft.Web/sites/<site-name>",
	"subject": "/Microsoft.Web/sites/<site-name>",
	"type": "Microsoft.Web.SlotSwapWithPreviewStarted",
	"time": "2020-01-28T18:26:51.7194887Z",
	"data": {
		"appEventTypeDetail": null,
		"name": "<site-name>",
		"clientRequestId": "922f4841-20d9-4dd6-8c5b-23f0d85e5592",
		"correlationRequestId": "9ac46505-2b8a-4e06-834c-05ffbe2e8c3a",
		"requestId": "765117aa-eaf8-4bd2-a644-1dbf69c7b0fd",
		"address": "/websystems/WebSites/web/subscriptions/<id>/webspaces/<webspace>/sites/<site-name>/slots?Command=SWAP&targetSlot=production",
		"verb": "POST",
		"sourceSlot": "staging",
		"targetSlot": "production"
	},
    "specversion": "1.0"
}

데이터 개체에는 다음 속성이 포함되어 있습니다.

속성 Type 설명
appEventTypeDetail 개체 앱에 대한 작업의 세부 정보입니다.
action string 작업의 동작 유형입니다.
name string 이 이벤트가 발생한 웹 사이트의 이름입니다.
clientRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 클라이언트 요청 ID입니다.
correlationRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 상관 관계 요청 ID입니다.
requestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 요청 ID입니다.
address string 이 작업의 HTTP 요청 URL입니다.
verb string 이 작업의 HTTP 동사입니다.

AppUpdated.Restarted, AppUpdated.Stopped, AppUpdated.ChangedAppSettings

{
	"id": "b74ea56b-2a3f-4de5-a5d7-38e60c81cf23",
	"source": "/subscriptions/<id>/resourceGroups/<group>/providers/Microsoft.Web/sites/<site-name>",
	"subject": "/Microsoft.Web/sites/<site-name>",
	"type": "Microsoft.Web.AppUpdated",
	"time": "2020-01-28T18:22:30.2760952Z",
	"data": {
		"appEventTypeDetail": {
			"action": "Stopped"
		},
		"name": "<site-name>",
		"clientRequestId": "64a5e0aa-7cee-4ff1-9093-b9197b820014",
		"correlationRequestId": "25bb36a5-8f6c-4f04-b615-e9a0ee045756",
		"requestId": "f2e8eb3f-b190-42de-b99e-6acefe587374",
		"address": "/websystems/WebSites/web/subscriptions/<id>/webspaces/<webspace>/sites/<site-name>/stop",
		"verb": "POST"
	},
    "specversion": "1.0"
}

데이터 개체의 속성은 다음과 같습니다.

속성 Type 설명
appEventTypeDetail 개체 앱에 대한 작업의 세부 정보입니다.
action string 작업의 동작 유형입니다.
name string 이 이벤트가 발생한 웹 사이트의 이름입니다.
clientRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 클라이언트 요청 ID입니다.
correlationRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 상관 관계 요청 ID입니다.
requestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 요청 ID입니다.
address string 이 작업의 HTTP 요청 URL입니다.
verb string 이 작업의 HTTP 동사입니다.

Serverfarms.AppServicePlanUpdated

{
	"id": "56501672-9150-40e1-893a-18420c7fdbf7",
	"source": "/subscriptions/<id>/resourceGroups/<rg>/providers/Microsoft.Web/serverfarms/<serverfarm-name>",
	"subject": "/Microsoft.Web/serverfarms/<plan-name>",
	"type": "Microsoft.Web.AppServicePlanUpdated",
	"time": "2020-01-28T18:22:23.5516004Z",
	"data": {
		"serverFarmEventTypeDetail": {
			"stampKind": "Public",
			"action": "Updated",
			"status": "Started"
		},
		"serverFarmId": "0",
		"sku": {
			"name": "P1v2",
			"tier": "PremiumV2",
			"size": "P1v2",
			"family": "Pv2",
			"capacity": 1
		},
		"clientRequestId": "8f880321-a991-45c7-b743-6ff63fe4c004",
		"correlationRequestId": "1995c3be-ba7f-4ccf-94af-516df637ec8a",
		"requestId": "b973a8e6-6949-4783-b44c-ac778be831bb",
		"address": "/websystems/WebSites/serverfarms/subscriptions/<id>/webspaces/<webspace-id>/serverfarms/<plan-name>/async",
		"verb": "PUT"
	},
    "specversion": "1.0"
}

데이터 개체의 속성은 다음과 같습니다.

속성 Type 설명
appServicePlanEventTypeDetail 개체 App Service 계획에 대한 작업의 세부 정보입니다.
stampKind string App Service 계획이 존재하는 환경의 종류입니다.
action string App Service 계획에 대한 작업의 유형입니다.
status string App Service 계획에 대한 작업의 상태입니다.
sku 개체 App Service 계획의 SKU입니다.
name string App Service 계획의 이름입니다.
Tier string App Service 계획의 계층입니다.
Size string App Service 계획의 크기입니다.
Family string App Service 계획의 제품군입니다.
Capacity string App Service 계획의 용량입니다.
action string 작업의 동작 유형입니다.
name string 이 이벤트가 발생한 웹 사이트의 이름입니다.
clientRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 클라이언트 요청 ID입니다.
correlationRequestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 상관 관계 요청 ID입니다.
requestId string App Service가 이 이벤트를 트리거한 사이트 API 작업에 대해 생성한 요청 ID입니다.
address string 이 작업의 HTTP 요청 URL입니다.
verb string 이 작업의 HTTP 동사입니다.

다음 단계