execlog

package
Version: v0.0.21 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 2, 2021 License: BSD-3-Clause Imports: 9 Imported by: 0

Documentation

Overview

Package execlog provides goma execlog service implementation.

Index

Constants

View Source
const DefaultMaxReqMsgSize = 10 * 1024 * 1024

DefaultMaxReqMsgSize is max request message size for execlog service. execlog server may receives > 8MB. grpc's default is 4MB.

Variables

View Source
var (
	DefaultViews = []*view.View{
		{
			TagKeys: []tag.Key{
				osFamilyKey,
				serviceAccountKey,
				gomaErrorKey,
				compilerProxyErrorKey,
				cacheHitKey,
				depscacheUsedKey,
				localRunKey,
				execExitStatusKey,
				execRequestRetryKey,
			},
			Measure:     requests,
			Aggregation: view.Sum(),
		},
		{
			TagKeys:     tagKeys,
			Measure:     handlerTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     pendingTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     includeProcessorWaitTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     includeProcessorRunTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     includePreprocessTotalFiles,
			Aggregation: view.Sum(),
		},
		{
			TagKeys:     tagKeys,
			Measure:     includeFileloadPendingTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     includeFileloadRunTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     rpcThrottleTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     rpcPendingTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     rpcWaitTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     fileResponseTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     localDelayTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     localPendingTime,
			Aggregation: defaultLatencyDistribution,
		},
		{
			TagKeys:     tagKeys,
			Measure:     localRunTime,
			Aggregation: defaultLatencyDistribution,
		},
	}
)

Functions

This section is empty.

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client is a client to access execlog service via gRPC.

func NewClient

func NewClient(address string, opts ...grpc.DialOption) Client

NewClient creates new client to access execlog service serving on address.

func (Client) SaveLog

func (c Client) SaveLog(ctx context.Context, in *gomapb.SaveLogReq, opts ...grpc.CallOption) (*gomapb.SaveLogResp, error)

SaveLog saves requested execlog.

type Service

type Service struct {
	execlogpb.UnimplementedLogServiceServer
}

Service represents goma execlog service.

func (Service) SaveLog

SaveLog emits some metrics.

* go.chromium.org/goma/execlog/requests
    {os_family, ,goma_error, compiler_proxy_error,
     cache_hit, depscache_used, local_run,
     exec_exit_status, exec_request_retry}
* go.chromium.org/goma/execlog/handler_time

TODO: implement saving logic to GCS?

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL