server: Index | Files | Directories

package server

import ""

Package server provides functions for goma servers.


Package Files

cluster.go dial.go init.go limited_sampler.go process_collector.go resource.go server.go


const (
    // same as default sampler
    DefaultTraceFraction = 1e-4

    // trace API limit is 4800/minutes.
    // 4800/60/(total number of replicas in the project)
    DefaultTraceQPS = 0.05

func ClusterName Uses

func ClusterName(ctx context.Context) string

ClusterName returns cluster name where server is running on.

func DefaultDialOption Uses

func DefaultDialOption() []grpc.DialOption

DefaultDialOption is default dial option to record opencensus stats and traces.

func DialContext Uses

func DialContext(ctx context.Context, addr string, opts ...grpc.DialOption) (*grpc.ClientConn, error)

DialContext dials to addr with default dial options.

func Flush Uses

func Flush()

Flush flushes opencensus data.

func GC Uses

func GC(ctx context.Context) int64

GC runs garbage-collector and reports latest measured resident memory size in bytes.

func HostName Uses

func HostName(ctx context.Context) string

HostName returns hostname. in k8s, it is podname.

func Init Uses

func Init(ctx context.Context, projectID, name string) error

Init initializes opencensus instrumentations, and error reporter. If projectID is not empty, it registers stackdriver exporter for the project. It also calls SetupHTTPClient.

func MemoryLimit Uses

func MemoryLimit() (int64, error)

MemoryLimit returns server memory limit, set by cgroup.

func NewHTTP Uses

func NewHTTP(port int, handler http.Handler) *http.Server

NewHTTP creates http server.

func NewLimitedSampler Uses

func NewLimitedSampler(fraction, qps float64) trace.Sampler

NewLimitedSampler returns trace sampler limited by fraction and qps.

func ProjectID Uses

func ProjectID(ctx context.Context) string

ProjectID returns current project id.

func ResidentMemorySize Uses

func ResidentMemorySize() int64

ResidentMemorySize reports latest measured resident memory size in bytes.

func Run Uses

func Run(ctx context.Context, servers ...Server)

Run runs servers. This is typically invoked as the last statement in the server's main function.

func SetupHTTPClient Uses

func SetupHTTPClient()

SetupHTTPClient sets up http default client to monitor by opencensus.

type GRPC Uses

type GRPC struct {

GRPC represents grpc server.

func NewGRPC Uses

func NewGRPC(port int, opts ...grpc.ServerOption) (GRPC, error)

NewGRPC creates grpc server listening on port.

func (GRPC) ListenAndServe Uses

func (g GRPC) ListenAndServe() error

ListenAndServe listens on Listener and handles requests with Server.

func (GRPC) Shutdown Uses

func (g GRPC) Shutdown(ctx context.Context) error

Shutdown gracefully shuts down the server.

type Server Uses

type Server interface {
    // ListenAndServe listens and then serve to handle requests on incoming
    // connections.
    ListenAndServe() error

    // Shutdown gracefully shuts down the server.
    Shutdown(context.Context) error

Server is interface to control server.

func NewHTTPS Uses

func NewHTTPS(hs *http.Server, certFile, keyFile string) Server

NewHTTPS creates https server.


healthzPackage healthz provides /healthz for grpc server.

Package server imports 37 packages (graph) and is imported by 9 packages. Updated 2020-10-27. Refresh now. Tools for package owners.