Skip to main content

Access Logs

Last updated on November 1, 2024
AGS Shared Cloud

Access Logs is not available in AGS Shared Cloud.

Overview

Access Logs provided by AccelByte Gaming Services (AGS) is a service that allows you to review the traffic logs from AGS. Every interaction made by a user, player, or application with an endpoint in the AGS platform is collected and stored in logs by the Access Logs service, and those logs can be accessed in the AGS Admin Portal. Each log contains detailed information about the event that generated it, which can assist in identifying problems while troubleshooting.

Permissions

Permissions are used to grant access to specific resources within our services. Make sure your account has the following permissions before you attempt to access the logs in the Admin Portal:

UsagePermissionsAction
Query LogADMIN:NAMESPACE:{namespace}:LOGREAD

Permissions work slightly different depending on whether they are assigned to IAM Clients or to Roles which are assigned to users. For more information, see AGS's Authorization documentation.

View service logs in the Admin Portal

View a log

  1. In the Admin Portal, choose the namespace you wish to open. Access Logs sits outside of namespaces in the Development Utilities menu, so the logs can theoretically be accessed from any namespace. In practice, when you use Access Logs, only the logs from the namespaces to which you have access to will be visible.

  2. On the sidebar, go to Development Utilities menu > Access Logs.

  3. On the Access Logs page, you can view every log from every namespace that you have. To find a log, you can either browse the log list directly or use the filters available on the left side of the page.

  • Request Time: filters the search by when a request was made. You can define the time range of the search by inputting the start and end times in UTC format in the Start Date and End Date fields, respectively. The maximum period of time you can search for is 30 days.
tip

By default, any log search will be restricted to results from the previous hour before you opened the Access Logs page. If you want to search for older logs, you can input an earlier time into the Start Date field.

  • Log Type: filters the search by type of log. There are currently two types of logs: REST and WebSocket. If you choose to filter by WebSocket logs, you can also use WebSocket Specific Filter.

  • Show Internal Calls: toggle this filter to include internal calls in the search. An internal call is a record that doesn't provide a value to the user, such as a health check or revocation list. This filter is toggled to include internal calls by default.

  • General filters:

    • Namespace: limits the search to a specific namespace. If left blank, the logs returned by your search will come from every namespace to which you have access.

    • Service Name: limits the search to a specific service. To use this filter, type the name of the desired service into the box that appears. The service names must be entered as per the following table:

      Service Name
      ServiceService Name
      Achievementsjustice-achievement-service
      Analyticsanalytic
      Augmentjustice-augment-service
      asicjustice-basic-service
      Build Infojustice-buildinfo-service
      Cloud Storagejustice-cloud-storage
      Cloud Savejustice-cloudsave-service
      Differjustice-differ-service
      Dedicated Server Artifact Managerjustice-ds-artifact-manager
      Dedicated Server Hubjustice-ds-hub-service
      Dedicated Server Log Managerjustice-ds-log-manager-service
      Dedicated Server Uploadjustice-ds-upload-service
      DSM Controllerjustice-dsm-controller-service
      Event Logjustice-event-log-service
      GDPRjustice-gdpr-service
      Groupsjustice-group-service
      IAMjustice-iam-service
      Leaderboardsjustice-leaderboard-service
      Legaljustice-legal-service
      Lobbyjustice-lobby-server
      Logjustice-log-service
      Matchmakingjustice-matchmaking
      Platformjustice-platform-service
      QOS Managerjustice-qos-manager-service
      QOSjustice-qos-service
      Reportingjustice-reporting-service
      Season Passjustice-seasonpass-service
      Session Browserjustice-session-browser-service
      Socialjustice-social-service
      Statisticsjustice-statistic-service
      Turn Managerjustice-turn-manager-service
      User Generated Content (UGC)justice-ugc-service
    • User ID: filters the search by a particular user or player's activity. To use this filter, type the User ID of the desired user or player into the box that appears.

    • Client ID: filters the search by a particular application's activity. To use this filter, type the Client ID of the desired application into the box that appears.

    • Request Method: filters the search by a particular request method. To use this filter, select from the following options in the dropdown menu:

      Request Method
      Request Method
      GET
      PUT
      DELETE
      POST
      PATCH
    • Response Status Code: filters the search by a specific response status code. To use this filter, select from the following options in the dropdown menu:

      Response Status Code
      Response Status Code
      200 OK
      201 Created
      202 Accepted
      204 No Content
      302 Found
      307 Temporary Redirect
      400 Bad Request
      401 Unauthorized
      403 Forbidden
      404 Not Found
      405 Method Not Allowed
      406 Not Acceptable
      08 Request Timeout
      409 Conflict
      412 Precondition Failed
      413 Payload Too Large
      415 Unsupported Media Type
      422 Unprocessable Entity
      429 Too Many Requests
      500 Internal Server Error
      502 Bad Gateway
      503 Service Unavailable
      504 Gateway Timeout
    • Path: filters the search by a particular file path, such as /platform/admin. To use this filter, type the desired path into the box that appears.

    • Source IP: filters the search by a particular IP address. To use this filter, type the desired IP address in the box that appears.

    • Trace ID: filters the search by a particular trace ID. To use this filter, type the desired ID into the box that appears.

      tip

      The trace ID of a request is found in its Response Header.

    • Referrer: filters the search by a particular referrer from which the log was generated. To use this filter, type the web address of the referrer into the box that appears.

    • Response Duration: filters the search by logs with a specific response time. You can use this filter to search for logs with notably long or short response times. To use this filter, select Duration Option and choose from the following subfields:

      Response Duration
      Response Duration
      Less Than
      More Than
      Between

      If you select Less Than or More Than, type the duration in milliseconds in the Duration field. If you select Between, type the shortest response time into the Minimum Time field and the longest response time into the Maximum Time field, both in milliseconds.

  • WebSocket Specific Filters:

    • Connection ID: filters the search based on the WebSocket Connection ID of a particular user.

      NOTE

      A user or player's WebSocket Connection ID will change each time they disconnect and reconnect to the AGS platform.

    • Session ID: filters the search based on the Session ID of a particular user or player's session.

    • Connection Stage: filters the search by connection stage. To use this filter, select from the following options in the dropdown menu:

      Connection Stage
      Connection Stage
      Connect
      Disconnect
      Receive
      Send
    • Close Code: filters the search by a particular close code. To use this filter, type the desired close code into the box that appears. The close code must be entered as a numerical value, as per the table below:

      Close Code
      Close CodeDescription
      4000disconnectCloseCode
      4001disconnectTokenRevokedCode
      4002disconnectServerClosedCode
    • Message Type: filters the search based on message type. To use this filter, type the desired message type into the box that appears. The message type must be entered as per the following:

      Message Type
      Message Type
      partyInfoRequest
      partyInfoResponse
      partyCreateRequest
      partyCreateResponse
      partyLeaveRequest
      partyLeaveResponse
      partyLeaveNotif
      partyInviteRequest
      partyInviteResponse
      partyInviteNotif
      partyGetInvitedNotif
      partyJoinRequest
      partyJoinResponse
      partyJoinNotif
      partyRejectRequest
      partyRejectResponse
      partyRejectNotif
      partyKickRequest
      partyKickResponse
      partyKickNotif
      personalChatRequest
      personalChatResponse
      personalChatNotif
      partyChatRequest
      partyChatResponse
      partyChatNotif
      personalChatHistoryRequest
      personalChatHistoryResponse
      partyPromoteLeaderRequest
      partyPromoteLeaderResponse
      partyGenerateCodeRequest
      partyGenerateCodeResponse
      partyGetCodeRequest
      partyGetCodeResponse
      partyDeleteCodeRequest
      partyDeleteCodeResponse
      partyJoinViaCodeRequest
      partyJoinViaCodeResponse
      partySendNotifRequest
      partySendNotifResponse
      partyNotif
      friendsStatusRequest
      friendsStatusResponse
      setUserStatusRequest
      setUserStatusResponse
      userStatusNotif
      clientResetRequest
      messageNotif
      startMatchmakingRequest
      startMatchmakingResponse
      cancelMatchmakingRequest
      cancelMatchmakingResponse
      matchmakingNotif
      setReadyConsentRequest
      setReadyConsentResponse
      setReadyConsentNotif
      rematchmakingNotif
      requestFriendsRequest
      requestFriendsResponse
      requestFriendsNotif
      listIncomingFriendsRequest
      listIncomingFriendsResponse
      listOutgoingFriendsRequest
      listOutgoingFriendsResponse
      acceptFriendsRequest
      acceptFriendsResponse
      acceptFriendsNotif
      rejectFriendsRequest
      rejectFriendsNotif
      rejectFriendsResponse
      cancelFriendsRequest
      cancelFriendsResponse
      cancelFriendsNotif
      unfriendRequest
      unfriendResponse
      unfriendNotif
      listOfFriendsRequest
      listOfFriendsResponse
      getFriendshipStatusRequest
      getFriendshipStatusResponse
      blockPlayerRequest
      blockPlayerResponse
      blockPlayerNotif
      unblockPlayerRequest
      unblockPlayerResponse
      unblockPlayerNotif
      getBlockedPlayerRequest
      getBlockedPlayerResponse
      createDSRequest
      createDSResponse
      waitForDSRequest
      claimDSRequest
      notifyDSRequest
      dsNotif
      systemComponentsStatus
      partyDataUpdateNotif
      joinDefaultChannelRequest
      joinDefaultChannelResponse
      userBannedNotification
      userUnbannedNotification
      exitAllChannel
      sendChannelChatRequest
      sendChannelChatResponse
      channelChatNotif
      setSessionAttributeRequest
      setSessionAttributeResponse
      getSessionAttributeRequest
      getSessionAttributeResponse
      getAllSessionAttributeRequest
      getAllSessionAttributeResponse
      signalingP2PNotif
      userMetricRequest
      userMetricResponse
      sendMatchResultNotif
    • Message ID: filters the search by a particular Message ID.

  1. After selecting your filters, click the Apply Filter button to begin your search.

  2. Select a log file to expand its contents.

    • In the log's Details tab, you can see information about the activity that generated that particular log.

    • Under the Request Body (REST)/Request Message (WebSocket) tab, you can see the request bodies for the action generated in the log.

    • Under the Response Body (REST)/Response Message (WebSocket) tab, you can see the response to that action.