[ https://issues.apache.org/jira/browse/BEAM-4374?focusedWorklogId=411586&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-411586 ]
ASF GitHub Bot logged work on BEAM-4374: ---------------------------------------- Author: ASF GitHub Bot Created on: 28/Mar/20 01:34 Start Date: 28/Mar/20 01:34 Worklog Time Spent: 10m Work Description: lostluck commented on pull request #11231: [BEAM-4374] Shortids for the Go SDK URL: https://github.com/apache/beam/pull/11231#discussion_r399602340 ########## File path: sdks/go/pkg/beam/core/runtime/harness/monitoring.go ########## @@ -16,20 +16,165 @@ package harness import ( + "bytes" + "strconv" + "sync" + "sync/atomic" "time" + "github.com/apache/beam/sdks/go/pkg/beam/core/graph/coder" + "github.com/apache/beam/sdks/go/pkg/beam/core/graph/mtime" "github.com/apache/beam/sdks/go/pkg/beam/core/metrics" "github.com/apache/beam/sdks/go/pkg/beam/core/runtime/exec" fnpb "github.com/apache/beam/sdks/go/pkg/beam/model/fnexecution_v1" ppb "github.com/apache/beam/sdks/go/pkg/beam/model/pipeline_v1" "github.com/golang/protobuf/ptypes" ) -func monitoring(p *exec.Plan) (*fnpb.Metrics, []*ppb.MonitoringInfo) { +type mUrn uint32 +type mType uint32 + +// TODO: Pull these from the protos. +var sUrns = []string{ + "beam:metric:user:v1", + "beam:metric:element_count:v1", + "beam:metric:pardo_execution_time:start_bundle_msecs:v1", + "beam:metric:pardo_execution_time:process_bundle_msecs:v1", + "beam:metric:pardo_execution_time:finish_bundle_msecs:v1", + "beam:metric:ptransform_progress:remaining:v1", + "beam:metric:ptransform_progress:completed:v1", + + "TestingSentinelUrn", // Must remain last. +} + +const ( + urnUser mUrn = iota + urnElementCount + urnStartBundle + urnProcessBundle + urnFinishBundle + urnProgressRemaining + urnProgressCompleted + + urnTestSentinel // Must remain last. +) + +var sTypes = []string{ + "beam:metrics:sum_int64:v1", + "beam:metrics:sum_double:v1", + "beam:metrics:distribution_int64:v1", + "beam:metrics:distribution_double:v1", + "beam:metrics:latest_int64:v1", + "beam:metrics:latest_double:v1", + "beam:metrics:top_n_int64:v1", + "beam:metrics:top_n_double:v1", + "beam:metrics:bottom_n_int64:v1", + "beam:metrics:bottom_n_double:v1", + "beam:metrics:monitoring_table:v1", + "beam:metrics:progress:v1", + + "TestingSentinelType", // Must remain last. +} + +const ( Review comment: Ack. I've kept the extra marker type around for the moment, but I might collapse things into the function to simplify some thing. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking ------------------- Worklog Id: (was: 411586) Time Spent: 34h 50m (was: 34h 40m) > Update existing metrics in the FN API to use new Metric Schema > -------------------------------------------------------------- > > Key: BEAM-4374 > URL: https://issues.apache.org/jira/browse/BEAM-4374 > Project: Beam > Issue Type: New Feature > Components: beam-model > Reporter: Alex Amato > Priority: Major > Time Spent: 34h 50m > Remaining Estimate: 0h > > Update existing metrics to use the new proto and cataloging schema defined in: > [_https://s.apache.org/beam-fn-api-metrics_] > * Check in new protos > * Define catalog file for metrics > * Port existing metrics to use this new format, based on catalog > names+metadata -- This message was sent by Atlassian Jira (v8.3.4#803005)