atc: add new metric type for checks
Signed-off-by: Joshua Winters <jwinters@pivotal.io> Co-authored-by: Rui Yang <ryang@pivotal.io>
This commit is contained in:
parent
248fac7989
commit
e66e0302be
|
@ -3,6 +3,7 @@ package exec
|
|||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"strconv"
|
||||
"time"
|
||||
|
||||
"code.cloudfoundry.org/lager"
|
||||
|
@ -142,11 +143,10 @@ func (step *CheckStep) Run(ctx context.Context, state RunState) error {
|
|||
return err
|
||||
}
|
||||
|
||||
metric.ResourceCheck{
|
||||
PipelineName: step.metadata.PipelineName,
|
||||
ResourceName: step.plan.Name,
|
||||
TeamName: step.metadata.TeamName,
|
||||
Success: err == nil,
|
||||
metric.CheckFinished{
|
||||
CheckName: step.plan.Name,
|
||||
ResourceConfigScopeID: strconv.Itoa(step.metadata.ResourceConfigScopeID),
|
||||
Success: err == nil,
|
||||
}.Emit(logger)
|
||||
|
||||
err = step.delegate.SaveVersions(versions)
|
||||
|
|
|
@ -469,6 +469,31 @@ func (event ResourceCheck) Emit(logger lager.Logger) {
|
|||
)
|
||||
}
|
||||
|
||||
type CheckFinished struct {
|
||||
ResourceConfigScopeID string
|
||||
CheckName string
|
||||
Success bool
|
||||
}
|
||||
|
||||
func (event CheckFinished) Emit(logger lager.Logger) {
|
||||
state := EventStateOK
|
||||
if !event.Success {
|
||||
state = EventStateWarning
|
||||
}
|
||||
emit(
|
||||
logger.Session("check-finished"),
|
||||
Event{
|
||||
Name: "check finished",
|
||||
Value: 1,
|
||||
State: state,
|
||||
Attributes: map[string]string{
|
||||
"scope_id": event.ResourceConfigScopeID,
|
||||
"check_name": event.CheckName,
|
||||
},
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
var lockTypeNames = map[int]string{
|
||||
lock.LockTypeResourceConfigChecking: "ResourceConfigChecking",
|
||||
lock.LockTypeBuildTracking: "BuildTracking",
|
||||
|
|
Loading…
Reference in New Issue