luci: go.chromium.org/luci/logdog/appengine/coordinator/endpoints/services Index | Files

package services

import "go.chromium.org/luci/logdog/appengine/coordinator/endpoints/services"

Index

Package Files

archiveStream.go batch.go loadStream.go registerStream.go service.go taskQueue.go terminateStream.go

func New Uses

func New(settings ServerSettings) logdog.ServicesServer

New creates a new authenticating ServicesServer instance.

Panics if `settings` is invalid.

func RawArchiveQueueName Uses

func RawArchiveQueueName(queueNumber int32) string

RawArchiveQueueName returns the raw name for the queueNumber'th queue used for ArchiveTasks.

type ServerSettings Uses

type ServerSettings struct {
    // NumQueues is the number of queues to use for Archival tasks.
    //
    // Note that cloud task queues have a maximum throughput of 1000 qps on
    // average. Each log STREAM in LogDog will require processing AT LEAST two
    // tasks. It is recommended that you monitor the queue throughput of the
    // logdog deployment and increase this value when getting close to the qps
    // limit.
    //
    // NOTE:
    //   * Decreasing this value will cause some tasks to be un-issued.
    //     DO NOT DO THIS without coding some other workaround (for example, in
    //     LeaseArchiveTasks, inspect ALL available queues and issue randomly from
    //     all of them; Could be done by maintaining a `maxNumQueues` alongside
    //     `numQueues` where `maxNumQueues` is kept high while draining the higher
    //     queues).
    //   * Increasing this value is OK. Leased tasks embed their queue number into
    //     their TaskName field, which is round-tripped through the Archivist.
    //     When the DeleteArchiveTasks RPC is invoked, each task will be removed
    //     from the queue number embedded in TaskName.
    //
    // Reqired. Must be >0.
    NumQueues int
}

ServerSettings are settings for the LogDog RPC service.

Package services imports 32 packages (graph) and is imported by 2 packages. Updated 2020-10-28. Refresh now. Tools for package owners.