forked from dotnet/machinelearning
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathApplicationExitEvent.cs
28 lines (26 loc) · 1005 Bytes
/
ApplicationExitEvent.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
using System;
using System.Collections.Generic;
using System.Diagnostics;
namespace Microsoft.ML.CLI.Telemetry.Events
{
/// <summary>
/// Telemetry event for CLI application exit.
/// </summary>
internal class ApplicationExitEvent
{
public static void TrackEvent(int exitCode, bool commandParseSucceeded, TimeSpan duration, Exception ex)
{
Telemetry.TrackEvent("application-exit",
new Dictionary<string, string>
{
{ "CommandParseSucceeded", commandParseSucceeded.ToString() },
{ "ExitCode", exitCode.ToString() },
{ "PeakMemory", Process.GetCurrentProcess().PeakWorkingSet64.ToString() },
},
duration, ex);
}
}
}