Session Observability
Monitor and analyze multiplayer session performance through detailed events and session data.
읽는 시간 2분최근 업데이트: 10일 전
Session Observability 서비스는 멀티플레이어 세션에서 발생한 주요 이벤트를 보여 줍니다. 현재 이 서비스는 Matchmaker 이벤트를 지원합니다. Session Observability API를 사용하면 ID나 다음 필터 기준에 따라 세션 세부 정보를 가져올 수 있습니다.
- 풀 ID
- 풀 이름
- 대기열 이름
- 영역 ID
- 매치메이킹 티켓 ID
- 다음 날짜 이후 생성
- 다음 날짜 이후 업데이트
Authentication
Session Observability 서비스는 서비스 계정 인증을 사용합니다. 프로젝트 레벨 멀티플레이어 세션 세부 정보 조회자 역할이 부여된 서비스 계정에 권한이 부여되어 해당 프로젝트의 API에 대한 요청을 진행할 수 있습니다.세션 이벤트
현재 지원되는 세션 이벤트는 다음과 같습니다.
이벤트 이름 | 설명 |
|---|---|
| Match Created | Matchmaker를 통해 매치가 생성되었습니다. 이 매치의 |
| Allocation Requested | 특정 영역에 있는 이 세션에 대해 Multiplay Hosting 할당이 요청되었습니다. |
| Allocation Succeeded | 요청된 Multiplay Hosting 할당을 성공적으로 완료했습니다. |
| Allocation Failed | 요청된 Multiplay Hosting 할당을 실패했습니다. |
| Players Assigned | Matchmaker를 통해 플레이어가 이 세션에 지정되었습니다. |
| Backfill Match Created | 백필을 활성화해야 합니다. 이 세션과 관련된 백필 티켓에 해당하는 매치가 생성되었습니다. 이 이벤트에는 해당 매치의 팀과 매치를 생성하는 데 적용된 규칙이 포함됩니다. |
| Players Connected | 백필을 활성화해야 합니다. Matchmaker 외부의 플레이어가 세션에 연결되었습니다. Matchmaker는 DGS에서 보낸 백필 업데이트를 사용하여 해당 플레이어를 확인합니다. |
| Players Disconnected | 백필을 활성화해야 합니다. Matchmaker 외부의 플레이어가 세션에서 연결 해제되었습니다. Matchmaker는 DGS에서 보낸 백필 업데이트를 사용하여 해당 플레이어를 확인합니다. |
샘플 세션 세부 사항
다음 예시는 백필이 활성화되지 않은 API의 세션 세부 정보에서 수신한 응답을 보여 줍니다.{ "allocation": { "completedAt": "2024-03-19T22:12:48.237Z", "regionId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5", "requestedAt": "2024-03-19T22:12:47.981Z", "status": "Allocated" }, "createdAt": "2024-03-19T22:12:47.847Z", "environmentId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5", "gameMode": { "poolId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5", "poolName": "default-pool", "queueId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5", "queueName": "default-queue" }, "matchmakingStatus": "OpenNotBackfilling", "projectId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5", "sessionEvents": [ { "appliedRules": [ { "context": "Team", "teamId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5", "name": "Blue Team", "type": "Difference", "source": "Players.CustomData.Skill", "reference": 500, "not": false, "externalData": {} } ], "teams": [ { "id": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5", "name": "Red Team", "playerIds": [ "Player 1", "Player 2", "Player 3", ] }, { "id": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5", "name": "Blue Team", "playerIds": [ "Player 4", "Player 5", "Player 6", ] } ], "timestamp": "2024-03-19T22:12:47.847Z", "type": "match.created" }, { "regionId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5", "timestamp": "2024-03-19T22:12:47.981Z", "type": "allocation.requested" }, { "timestamp": "2024-03-19T22:12:48.237Z", "type": "allocation.succeeded" }, { "assignmentStatus": "Found", "players": [ { "customData": { "Skill": 2000 }, "id": "Player 3", "qosResults": [], "ticketId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5" }, { "customData": { "Skill": 1800 }, "id": "Player 4", "qosResults": [], "ticketId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5" }, { "customData": { "Skill": 2100 }, "id": "Player 5", "qosResults": [], "ticketId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5" }, { "customData": { "Skill": 1750 }, "id": "Player 6", "qosResults": [], "ticketId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5" }, { "customData": { "Skill": 1950 }, "id": "Player 1", "qosResults": [], "ticketId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5" }, { "customData": { "Skill": 1675 }, "id": "Player 2", "qosResults": [], "ticketId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5" } ], "timestamp": "2024-03-19T22:12:49.198Z", "type": "players.assigned" } ], "sessionId": "0e5a4f23-5e1a-4a82-80b0-a1bd80019bc5", "updatedAt": "2024-03-19T22:12:49.198Z"}