Example #1
0
        public static string GetAppStateString(AppIdTuple t, AppState appState)
        {
            var sbFlags = new StringBuilder();

            if (appState.Started)
            {
                sbFlags.Append("S");
            }
            if (appState.StartFailed)
            {
                sbFlags.Append("F");
            }
            if (appState.Running)
            {
                sbFlags.Append("R");
            }
            if (appState.Killed)
            {
                sbFlags.Append("K");
            }
            if (appState.Initialized)
            {
                sbFlags.Append("I");
            }
            if (appState.PlanApplied)
            {
                sbFlags.Append("P");
            }

            var now = DateTime.UtcNow;

            var stateStr = String.Format("APP:{0}:{1}:{2}:{3}:{4}:{5}:{6}",
                                         t.ToString(),
                                         sbFlags.ToString(),
                                         appState.ExitCode,
                                         (now - appState.LastChange).TotalSeconds,
                                         appState.CPU,
                                         appState.GPU,
                                         appState.Memory
                                         );

            return(stateStr);
        }