Received TerminateProcess for GameLift, want to know why

0

Hi,

I am experiencing an issue with my GameLift fleet, and I would like to understand the cause of it. Here are the details:

  • GameLift Version: com.amazonaws.gameliftserver.sdk-5.1.2 on Unity

  • Fleet ID: fleet-334c5b67-8c51-437b-982e-fbb4ad158f36

  • Fleet capacity changes: On 2024-10-08T18:08:04.302+09:00, I updated the fleet capacity to have a Desired size = 1, Max size = 5, and Min size = 1.

  • Game session start time: 2024-10-08T09:25:22.847Z, with GameSessionId: gsess-d010d14c-48d1-4a90-81af-a7bf27d86cdc

  • ActivateGameSession call: Called at 2024-10-08T18:25:41.486+09:00

{
  "GameSessionId": "arn:aws:gamelift:ap-northeast-2::gamesession/fleet-334c5b67-8c51-437b-982e-fbb4ad158f36/gsess-d010d14c-48d1-4a90-81af-a7bf27d86cdc",
  "Action": "ActivateGameSession",
  "RequestId": "3712d5dc-4d0c-466b-ae64-a2bab27a0658"
}
  • Response: Received a 200 status response at 2024-10-08T18:25:41.737+09:00
{
    "Action": "ActivateGameSession",
    "RequestId": "3712d5dc-4d0c-466b-ae64-a2bab27a0658",
    "StatusCode": 200
}
  • Issue: At 2024-10-08T18:25:45.312+09:00, I received a GAME_SESSION_ACTIVATION_TIMEOUT error with the message:
GameSession failed to activate within the expected time. Check your game session log to see why ActivateGameSession() took longer to complete than expected. GameSessionId: arn:aws:gamelift:ap-northeast-2::gamesession/fleet-334c5b67-8c51-437b-982e-fbb4ad158f36/gsess-d010d14c-48d1-4a90-81af-a7bf27d86cdc
  • TerminateProcess received: At 2024-10-08T18:26:08.734+09:00, TerminateProcess was received, and the session was shut down shortly thereafter.
{
  "Action": "TerminateProcess",
  "TerminationTime": 1728379568653
}

The session was configured as On-Demand, not Spot, and Full protection was enabled. Could you help me understand why the TerminateProcess was triggered even though these conditions were met? I would appreciate any insight or guidance you can provide regarding this situation.

I experienced this issue, and it is currently working fine again. I'm worried that this might happen when we deploy live

Thank you.

demandé il y a 2 mois60 vues
1 réponse
0

Based on the information provided, it appears that the TerminateProcess command was triggered due to a game session activation timeout, rather than an instance termination or fleet scaling event.

The sequence of events suggests the following:

  1. You started a game session at 2024-10-08T09:25:22.847Z.
  2. You called ActivateGameSession at 2024-10-08T18:25:41.486+09:00, which received a successful 200 status response.
  3. However, about 3.5 seconds later, at 2024-10-08T18:25:45.312+09:00, you received a GAME_SESSION_ACTIVATION_TIMEOUT error.
  4. Approximately 23 seconds after that, at 2024-10-08T18:26:08.734+09:00, the TerminateProcess command was received.

The GAME_SESSION_ACTIVATION_TIMEOUT error indicates that your game server did not complete the activation process within the expected time frame. This can happen if your game server takes too long to initialize or if there are issues in your game code that prevent timely activation.

When a game session fails to activate, Amazon GameLift automatically terminates the process to free up resources and maintain the health of the fleet. This is why you received the TerminateProcess command, even though you were using On-Demand instances with full protection enabled.

To prevent this issue in the future:

  1. Review your game server code to ensure that the activation process completes quickly and efficiently.
  2. Check your game session logs to identify any bottlenecks or errors that might be causing delays in activation.
  3. Consider implementing better error handling and logging in your game server to catch and report any issues during the activation process.
  4. If your game genuinely needs more time to initialize, you may need to adjust the game session activation timeout setting for your fleet.

Remember that the TerminateProcess in this case was not due to instance termination or fleet scaling, but rather a result of the game session failing to activate properly. Addressing the root cause of the activation timeout should prevent this issue from occurring in your live deployment.
Sources
Dedicated Game Server Hosting - Amazon GameLift FAQs - Amazon Web Services
GameLiftClient (AWS SDK for Java - 2.21.29)
Amazon GameLift - FAQ - Amazon Web Services

profile picture
répondu il y a 2 mois

Vous n'êtes pas connecté. Se connecter pour publier une réponse.

Une bonne réponse répond clairement à la question, contient des commentaires constructifs et encourage le développement professionnel de la personne qui pose la question.

Instructions pour répondre aux questions