benarchd

command
v0.1.21 Latest Latest
Warning

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

Go to latest
Published: Dec 13, 2022 License: BSD-3-Clause Imports: 15 Imported by: 0

README

benarchd

Benchmark result archival daemon. Usage in godoc.

Testing UI changes

# Build benarchd and some binaries to upload test data
jiri go install v.io/x/ref/services/ben/benarchd v.io/x/ref/services/ben/benup v.io/x/ref/cmd/principal v.io/x/ref/services/agent/v23agentd
cd ${JIRI_ROOT}/release/go/bin

# Create dummy credentials to run all processes with
export V23_CREDENTIALS=/tmp/bencreds
./principal create --with-passphrase=false "${V23_CREDENTIALS}" bentesting
./v23agentd

# Start benarchd
# And then visit http://localhost:14142 to browse the UI
# Edit HTML/CSS/JavaScript in internal/assets to mess around with the UI
./benarchd \
  --assets=${JIRI_ROOT}/release/go/src/v.io/x/ref/services/ben/benarchd/internal/assets \
  --v23.tcp.address=localhost:14141 \
  --http=localhost:14142 &

# Populate with data (repeat multiple times or use multiple packages for more data)
go test -run NONE -bench . crypto/sha256 | ./benup --archiver=/127.0.0.1:14141

# Cleanup when done
kill $!
./v23agentd stop
unset V23_CREDENTIALS

Documentation

Overview

Command benarchd implements a benchmark archival daemon.

It provides a Vanadium RPC service to accept results to archive (typically provided by the benup tool - https://godoc.org/v.io/x/ref/services/ben/benup) and a web-interface to browse the results.

A SQL database is used for persistent storage, configured via the --store flag.

Usage:

benarchd [flags]

The benarchd flags are:

-assets=
  If set, the directory containing assets (template definitions, css,
  javascript files etc.) to use in the web interface. If not set, compiled-in
  assets will be used instead.
-exthttp=
  The address of the HTTP server to advertise externally, typically used if the
  HTTP server is running behind a proxy or on a machine that is unaware of its
  publicly accessible hostname/IP address. If empty, derived from --http.
-http=127.0.0.1:0
  Address on which to serve HTTP requests
-name=
  Vanadium object name to export this service under
-store=
  Specification of the persistent store to use. Format: <engine>:<parameters>,
  where <engine> can be 'sqlite3', 'mysql' or 'sqlconfig'. For 'sqlconfig',
  <parameters> is a path to a file containing a JSON-serialized SqlConfig
  (https://godoc.org/v.io/x/lib/dbutil#SqlConfig), for the others it is the
  data source name (e.g., filename for sqlite3)

The global flags are:

-alsologtostderr=true
  log to standard error as well as files
-log_backtrace_at=:0
  when logging hits line file:N, emit a stack trace
-log_dir=
  if non-empty, write log files to this directory
-logtostderr=false
  log to standard error instead of files
-max_stack_buf_size=4292608
  max size in bytes of the buffer to use for logging stack traces
-metadata=<just specify -metadata to activate>
  Displays metadata for the program and exits.
-stderrthreshold=2
  logs at or above this threshold go to stderr
-time=false
  Dump timing information to stderr before exiting the program.
-v=0
  log level for V logs
-v23.credentials=
  directory to use for storing security credentials
-v23.namespace.root=[/(dev.v.io:r:vprod:service:mounttabled)@ns.dev.v.io:8101]
  local namespace root; can be repeated to provided multiple roots
-v23.permissions.file=
  specify a perms file as <name>:<permsfile>
-v23.permissions.literal=
  explicitly specify the runtime perms as a JSON-encoded access.Permissions.
  Overrides all --v23.permissions.file flags
-v23.proxy=
  object name of proxy service to use to export services across network
  boundaries
-v23.proxy.limit=0
  max number of proxies to connect to when the policy is to connect to all
  proxies; 0 implies all proxies
-v23.proxy.policy=
  policy for choosing from a set of available proxy instances
-v23.tcp.address=
  address to listen on
-v23.tcp.protocol=
  protocol to listen with
-v23.virtualized.advertise-private-addresses=
  if set the process will also advertise its private addresses
-v23.virtualized.disallow-native-fallback=false
  if set, a failure to detect the requested virtualization provider will result
  in an error, otherwise, native mode is used
-v23.virtualized.dns.public-name=
  if set the process will use the supplied dns name (and port) without
  resolution for its entry in the mounttable
-v23.virtualized.docker=
  set if the process is running in a docker container and needs to configure
  itself differently therein
-v23.virtualized.provider=
  the name of the virtualization/cloud provider hosting this process if the
  process needs to configure itself differently therein
-v23.virtualized.tcp.public-address=
  if set the process will use this address (resolving via dns if appropriate)
  for its entry in the mounttable
-v23.virtualized.tcp.public-protocol=
  if set the process will use this protocol for its entry in the mounttable
-v23.vtrace.cache-size=1024
  The number of vtrace traces to store in memory
-v23.vtrace.collect-regexp=
  Spans and annotations that match this regular expression will trigger trace
  collection
-v23.vtrace.dump-on-shutdown=true
  If true, dump all stored traces on runtime shutdown
-v23.vtrace.enable-aws-xray=false
  Enable the use of AWS x-ray integration with vtrace
-v23.vtrace.sample-rate=0
  Rate (from 0.0 to 1.0) to sample vtrace traces
-v23.vtrace.v=0
  The verbosity level of the log messages to be captured in traces
-vmodule=
  comma-separated list of globpattern=N settings for filename-filtered logging
  (without the .go suffix).  E.g. foo/bar/baz.go is matched by patterns baz or
  *az or b* but not by bar/baz or baz.go or az or b.*
-vpath=
  comma-separated list of regexppattern=N settings for file pathname-filtered
  logging (without the .go suffix).  E.g. foo/bar/baz.go is matched by patterns
  foo/bar/baz or fo.*az or oo/ba or b.z but not by foo/bar/baz.go or fo*az

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL