Add better step telemetry and tracing for composite Actions (#1229)

* Add Step Telemetry

* better telemetry and tracing

* cleanup
This commit is contained in:
Thomas Boop
2021-07-30 10:45:49 -04:00
committed by GitHub
parent 4e95d0d6ad
commit 92ec3d0f29
9 changed files with 192 additions and 30 deletions

View File

@@ -61,6 +61,36 @@ namespace GitHub.Runner.Worker.Handlers
steps = Data.Steps;
}
// Add Telemetry to JobContext to send with JobCompleteMessage
if (stage == ActionRunStage.Main)
{
var hasRunsStep = false;
var hasUsesStep = false;
foreach (var step in steps)
{
if (step.Reference.Type == Pipelines.ActionSourceType.Script)
{
hasRunsStep = true;
}
else
{
hasUsesStep = true;
}
}
var pathReference = Action as Pipelines.RepositoryPathReference;
var telemetry = new ActionsStepTelemetry {
Ref = GetActionRef(),
HasPreStep = Data.HasPre,
HasPostStep = Data.HasPost,
IsEmbedded = ExecutionContext.IsEmbedded,
Type = "composite",
HasRunsStep = hasRunsStep,
HasUsesStep = hasUsesStep,
StepCount = steps.Count
};
ExecutionContext.Root.ActionsStepsTelemetry.Add(telemetry);
}
try
{
// Inputs of the composite step