GameLift OnTerminate never seems to trigger.

0

We are debugging some issues on our EC2 game servers where we get a GameLift event: SERVER_PROCESS_TERMINATED_UNHEALTHY, however we don't ever seem to receive the OnTerminate callback on the server. GameLift then launches a new instance of our server when the prior instance is still running (I have confirmed this via shelling into the instance and checking the running processes).

I have attempted to test this behavior on a local GameLift Anywhere instance, and it appears that regardless of what happens with OnHealthCheck, we never get the OnTerminate callback. I've tried returning 'false' AND just stalling out OnHealthCheck for several minutes; but it just continues to call OnHealthCheck endlessly regardless.

Does OnTerminate work with Anywhere instances? Can you confirm OnTerminate is supposed to call when OnHealthCheck returns false, or fails to return at all?

Gamelift Server SDK version 5, using this in Unreal 4.27

  • Hey JonG, when you say OnTerminate, are you referring to the callback, onProcessTerminate provided to ProcessReady?

  • Additionally, GameLift Anywhere only works for GameLift Server SDK versions 5 and above.

  • Yes I am referring to onProcessTerminate inside ProcessReady. Also apologies I had our GameLift Server SDK incorrect - it was/is actually 5.0. I'll update the original post.

JonG
已提問 5 個月前檢視次數 262 次
1 個回答
0

Hey JonG,

Thanks for bringing this to our attention. This situation doesn't sound expected, so I've relayed this to our engineering team. They have an item in their backlog to try and reproduce the situation you described and will get back to you once they have more info.

Regards, Jackson

AWS
已回答 5 個月前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南