VTOrc is the automated fault detection and repair tool in Vitess.
Usage:
vtorc [flags]
Examples:
vtorc \
--topo_implementation etcd2 \
--topo_global_server_address localhost:2379 \
--topo_global_root /vitess/global \
--log_dir $VTDATAROOT/tmp \
--port 15000 \
--instance-poll-time "1s" \
--topo-information-refresh-duration "30s" \
--alsologtostderr
Flags:
--allow-emergency-reparent Whether VTOrc should be allowed to run emergency reparent operation when it detects a dead primary (default true)
--alsologtostderr log to standard error as well as files
--audit-file-location string File location where the audit logs are to be stored
--audit-purge-duration duration Duration for which audit logs are held before being purged. Should be in multiples of days (default 168h0m0s)
--audit-to-backend Whether to store the audit log in the VTOrc database
--audit-to-syslog Whether to store the audit log in the syslog
--bind-address string Bind address for the server. If empty, the server will listen on all available unicast and anycast IP addresses of the local system.
--catch-sigpipe catch and ignore SIGPIPE on stdout and stderr if specified
--change-tablets-with-errant-gtid-to-drained Whether VTOrc should be changing the type of tablets with errant GTIDs to DRAINED
--clusters_to_watch strings Comma-separated list of keyspaces or keyspace/shards that this instance will monitor and repair. Defaults to all clusters in the topology. Example: "ks1,ks2/-80"
--config string config file name
--config-file string Full path of the config file (with extension) to use. If set, --config-path, --config-type, and --config-name are ignored.
--config-file-not-found-handling ConfigFileNotFoundHandling Behavior when a config file is not found. (Options: error, exit, ignore, warn) (default warn)
--config-name string Name of the config file (without extension) to search for. (default "vtconfig")
--config-path strings Paths to search for config files in. (default [/tmp])
--config-persistence-min-interval duration minimum interval between persisting dynamic config changes back to disk (if no change has occurred, nothing is done). (default 1s)
--config-type string Config file type (omit to infer config type from file extension).
--consul_auth_static_file string JSON File to read the topos/tokens from.
--emit_stats If set, emit stats to push-based monitoring and stats backends
--grpc-dial-concurrency-limit int Maximum concurrency of grpc dial operations. This should be less than the golang max thread limit of 10000. (default 1024)
--grpc_auth_static_client_creds string When using grpc_static_auth in the server, this file provides the credentials to use to authenticate with server.
--grpc_compression string Which protocol to use for compressing gRPC. Default: nothing. Supported: snappy
--grpc_enable_tracing Enable gRPC tracing.
--grpc_initial_conn_window_size int gRPC initial connection window size
--grpc_initial_window_size int gRPC initial window size
--grpc_keepalive_time duration After a duration of this time, if the client doesn't see any activity, it pings the server to see if the transport is still alive. (default 10s)
--grpc_keepalive_timeout duration After having pinged for keepalive check, the client waits for a duration of Timeout and if no activity is seen even after that the connection is closed. (default 10s)
--grpc_max_message_size int Maximum allowed RPC message size. Larger messages will be rejected by gRPC with the error 'exceeding the max size'. (default 16777216)
--grpc_prometheus Enable gRPC monitoring with Prometheus.
-h, --help help for vtorc
--instance-poll-time duration Timer duration on which VTOrc refreshes MySQL information (default 5s)
--keep_logs duration keep logs for this long (using ctime) (zero to keep forever)
--keep_logs_by_mtime duration keep logs for this long (using mtime) (zero to keep forever)
--lameduck-period duration keep running at least this long after SIGTERM before stopping (default 50ms)
--lock-timeout duration Maximum time to wait when attempting to acquire a lock from the topo server (default 45s)
--log_backtrace_at traceLocations when logging hits line file:N, emit a stack trace
--log_dir string If non-empty, write log files in this directory
--log_err_stacks log stack traces for errors
--log_rotate_max_size uint size in bytes at which logs are rotated (glog.MaxSize) (default 1887436800)
--logtostderr log to standard error instead of files
--max-stack-size int configure the maximum stack size in bytes (default 67108864)
--onclose_timeout duration wait no more than this for OnClose handlers before stopping (default 10s)
--onterm_timeout duration wait no more than this for OnTermSync handlers before stopping (default 10s)
--pid_file string If set, the process will write its pid to the named file, and delete it on graceful shutdown.
--port int port for the server
--pprof strings enable profiling
--pprof-http enable pprof http endpoints
--prevent-cross-cell-failover Prevent VTOrc from promoting a primary in a different cell than the current primary in case of a failover
--purge_logs_interval duration how often try to remove old logs (default 1h0m0s)
--reasonable-replication-lag duration Maximum replication lag on replicas which is deemed to be acceptable (default 10s)
--recovery-poll-duration duration Timer duration on which VTOrc polls its database to run a recovery (default 1s)
--remote_operation_timeout duration time to wait for a remote operation (default 15s)
--security_policy string the name of a registered security policy to use for controlling access to URLs - empty means allow all for anyone (built-in policies: deny-all, read-only)
--shutdown_wait_time duration Maximum time to wait for VTOrc to release all the locks that it is holding before shutting down on SIGTERM (default 30s)
--snapshot-topology-interval duration Timer duration on which VTOrc takes a snapshot of the current MySQL information it has in the database. Should be in multiple of hours
--sqlite-data-file string SQLite Datafile to use as VTOrc's database (default "file::memory:?mode=memory&cache=shared")
--stats_backend string The name of the registered push-based monitoring/stats backend to use
--stats_combine_dimensions string List of dimensions to be combined into a single "all" value in exported stats vars
--stats_common_tags strings Comma-separated list of common tags for the stats backend. It provides both label and values. Example: label1:value1,label2:value2
--stats_drop_variables string Variables to be dropped from the list of exported variables.
--stats_emit_period duration Interval between emitting stats to all registered backends (default 1m0s)
--stderrthreshold severityFlag logs at or above this threshold go to stderr (default 1)
--table-refresh-interval int interval in milliseconds to refresh tables in status page with refreshRequired class
--tablet_manager_grpc_ca string the server ca to use to validate servers when connecting
--tablet_manager_grpc_cert string the cert to use to connect
--tablet_manager_grpc_concurrency int concurrency to use to talk to a vttablet server for performance-sensitive RPCs (like ExecuteFetchAs{Dba,App}, CheckThrottler and FullStatus) (default 8)
--tablet_manager_grpc_connpool_size int number of tablets to keep tmclient connections open to (default 100)
--tablet_manager_grpc_crl string the server crl to use to validate server certificates when connecting
--tablet_manager_grpc_key string the key to use to connect
--tablet_manager_grpc_server_name string the server name to use to validate server certificate
--tablet_manager_protocol string Protocol to use to make tabletmanager RPCs to vttablets. (default "grpc")
--tolerable-replication-lag duration Amount of replication lag that is considered acceptable for a tablet to be eligible for promotion when Vitess makes the choice of a new primary in PRS
--topo-information-refresh-duration duration Timer duration on which VTOrc refreshes the keyspace and vttablet records from the topology server (default 15s)
--topo_consul_lock_delay duration LockDelay for consul session. (default 15s)
--topo_consul_lock_session_checks string List of checks for consul session. (default "serfHealth")
--topo_consul_lock_session_ttl string TTL for consul session.
--topo_consul_watch_poll_duration duration time of the long poll for watch queries. (default 30s)
--topo_etcd_lease_ttl int Lease TTL for locks and leader election. The client will use KeepAlive to keep the lease going. (default 30)
--topo_etcd_tls_ca string path to the ca to use to validate the server cert when connecting to the etcd topo server
--topo_etcd_tls_cert string path to the client cert to use to connect to the etcd topo server, requires topo_etcd_tls_key, enables TLS
--topo_etcd_tls_key string path to the client key to use to connect to the etcd topo server, enables TLS
--topo_global_root string the path of the global topology data in the global topology server
--topo_global_server_address string the address of the global topology server
--topo_implementation string the topology implementation to use
--topo_zk_auth_file string auth to use when connecting to the zk topo server, file contents should be <scheme>:<auth>, e.g., digest:user:pass
--topo_zk_base_timeout duration zk base timeout (see zk.Connect) (default 30s)
--topo_zk_max_concurrency int maximum number of pending requests to send to a Zookeeper server. (default 64)
--topo_zk_tls_ca string the server ca to use to validate servers when connecting to the zk topo server
--topo_zk_tls_cert string the cert to use to connect to the zk topo server, requires topo_zk_tls_key, enables TLS
--topo_zk_tls_key string the key to use to connect to the zk topo server, enables TLS
--v Level log level for V logs
-v, --version print binary version
--vmodule vModuleFlag comma-separated list of pattern=N settings for file-filtered logging
--wait-replicas-timeout duration Duration for which to wait for replica's to respond when issuing RPCs (default 30s)
Options (94)
| Option | Description | Source |
|---|---|---|
--alsologtostderr | help | |
--allow-emergency-reparent | Whether VTOrc should be allowed to run emergency reparent operation when it detects a dead primary (default true) | help |
--audit-file-location string | File location where the audit logs are to be stored | help |
--audit-purge-duration duration | Duration for which audit logs are held before being purged. | help |
--audit-to-backend | Whether to store the audit log in the VTOrc database | help |
--audit-to-syslog | Whether to store the audit log in the syslog | help |
--bind-address string | Bind address for the server. | help |
--catch-sigpipe | catch and ignore SIGPIPE on stdout and stderr if specified | help |
--change-tablets-with-errant-gtid-to-drained | Whether VTOrc should be changing the type of tablets with errant GTIDs to DRAINED | help |
--clusters_to_watch strings | Comma-separated list of keyspaces or keyspace/shards that this instance will monitor and repair. | help |
--config string | config file name | help |
--config-file string | Full path of the config file (with extension) to use. | help |
--config-file-not-found-handling ConfigFileNotFoundHandling | Behavior when a config file is not found. | help |
--config-name string | Name of the config file (without extension) to search for. | help |
--config-path strings | Paths to search for config files in. | help |
--config-persistence-min-interval duration | minimum interval between persisting dynamic config changes back to disk (if no change has occurred, nothing is done). | help |
--config-type string | Config file type (omit to infer config type from file extension). | help |
--consul_auth_static_file string | JSON File to read the topos/tokens from. | help |
--emit_stats | If set, emit stats to push-based monitoring and stats backends | help |
--grpc-dial-concurrency-limit int | Maximum concurrency of grpc dial operations. | help |
--grpc_auth_static_client_creds string | When using grpc_static_auth in the server, this file provides the credentials to use to authenticate with server. | help |
--grpc_compression string | Which protocol to use for compressing gRPC. | help |
--grpc_enable_tracing | Enable gRPC tracing. | help |
--grpc_initial_conn_window_size int | gRPC initial connection window size | help |
--grpc_initial_window_size int | gRPC initial window size | help |
--grpc_keepalive_time duration | After a duration of this time, if the client doesn't see any activity, it pings the server to see if the transport is still alive. | help |
--grpc_keepalive_timeout duration | After having pinged for keepalive check, the client waits for a duration of Timeout and if no activity is seen even after that the connection is closed. | help |
--grpc_max_message_size int | Maximum allowed RPC message size. | help |
--grpc_prometheus | Enable gRPC monitoring with Prometheus. | help |
-h, --help | help for vtorc | help |
--instance-poll-time duration | Timer duration on which VTOrc refreshes MySQL information (default 5s) | help |
--keep_logs duration | keep logs for this long (using ctime) (zero to keep forever) | help |
--keep_logs_by_mtime duration | keep logs for this long (using mtime) (zero to keep forever) | help |
--lameduck-period duration | keep running at least this long after SIGTERM before stopping (default 50ms) | help |
--lock-timeout duration | Maximum time to wait when attempting to acquire a lock from the topo server (default 45s) | help |
--log_backtrace_at traceLocations | when logging hits line file:N, emit a stack trace | help |
--log_dir string | If non-empty, write log files in this directory | help |
--log_err_stacks | log stack traces for errors | help |
--log_rotate_max_size uint | size in bytes at which logs are rotated (glog.MaxSize) (default 1887436800) | help |
--logtostderr | log to standard error instead of files | help |
--max-stack-size int | configure the maximum stack size in bytes (default 67108864) | help |
--onclose_timeout duration | wait no more than this for OnClose handlers before stopping (default 10s) | help |
--onterm_timeout duration | wait no more than this for OnTermSync handlers before stopping (default 10s) | help |
--pid_file string | If set, the process will write its pid to the named file, and delete it on graceful shutdown. | help |
--port int | port for the server | help |
--pprof strings | enable profiling | help |
--pprof-http | enable pprof http endpoints | help |
--prevent-cross-cell-failover | Prevent VTOrc from promoting a primary in a different cell than the current primary in case of a failover | help |
--purge_logs_interval duration | how often try to remove old logs (default 1h0m0s) | help |
--reasonable-replication-lag duration | Maximum replication lag on replicas which is deemed to be acceptable (default 10s) | help |
--recovery-poll-duration duration | Timer duration on which VTOrc polls its database to run a recovery (default 1s) | help |
--remote_operation_timeout duration | time to wait for a remote operation (default 15s) | help |
--security_policy string | the name of a registered security policy to use for controlling access to URLs - empty means allow all for anyone (built-in policies: deny-all, read-only) | help |
--shutdown_wait_time duration | Maximum time to wait for VTOrc to release all the locks that it is holding before shutting down on SIGTERM (default 30s) | help |
--snapshot-topology-interval duration | Timer duration on which VTOrc takes a snapshot of the current MySQL information it has in the database. | help |
--sqlite-data-file string | SQLite Datafile to use as VTOrc's database (default "file::memory:?mode=memory&cache=shared") | help |
--stats_backend string | The name of the registered push-based monitoring/stats backend to use | help |
--stats_combine_dimensions string | List of dimensions to be combined into a single "all" value in exported stats vars | help |
--stats_common_tags strings | Comma-separated list of common tags for the stats backend. | help |
--stats_drop_variables string | Variables to be dropped from the list of exported variables. | help |
--stats_emit_period duration | Interval between emitting stats to all registered backends (default 1m0s) | help |
--stderrthreshold severityFlag | logs at or above this threshold go to stderr (default 1) | help |
--table-refresh-interval int | interval in milliseconds to refresh tables in status page with refreshRequired class | help |
--tablet_manager_grpc_ca string | the server ca to use to validate servers when connecting | help |
--tablet_manager_grpc_cert string | the cert to use to connect | help |
--tablet_manager_grpc_concurrency int | concurrency to use to talk to a vttablet server for performance-sensitive RPCs (like ExecuteFetchAs{Dba,App}, CheckThrottler and FullStatus) (default 8) | help |
--tablet_manager_grpc_connpool_size int | number of tablets to keep tmclient connections open to (default 100) | help |
--tablet_manager_grpc_crl string | the server crl to use to validate server certificates when connecting | help |
--tablet_manager_grpc_key string | the key to use to connect | help |
--tablet_manager_grpc_server_name string | the server name to use to validate server certificate | help |
--tablet_manager_protocol string | Protocol to use to make tabletmanager RPCs to vttablets. | help |
--tolerable-replication-lag duration | Amount of replication lag that is considered acceptable for a tablet to be eligible for promotion when Vitess makes the choice of a new primary in PRS | help |
--topo-information-refresh-duration duration | Timer duration on which VTOrc refreshes the keyspace and vttablet records from the topology server (default 15s) | help |
--topo_consul_lock_delay duration | LockDelay for consul session. | help |
--topo_consul_lock_session_checks string | List of checks for consul session. | help |
--topo_consul_lock_session_ttl string | TTL for consul session. | help |
--topo_consul_watch_poll_duration duration | time of the long poll for watch queries. | help |
--topo_etcd_lease_ttl int | Lease TTL for locks and leader election. | help |
--topo_etcd_tls_ca string | path to the ca to use to validate the server cert when connecting to the etcd topo server | help |
--topo_etcd_tls_cert string | path to the client cert to use to connect to the etcd topo server, requires topo_etcd_tls_key, enables TLS | help |
--topo_etcd_tls_key string | path to the client key to use to connect to the etcd topo server, enables TLS | help |
--topo_global_root string | the path of the global topology data in the global topology server | help |
--topo_global_server_address string | the address of the global topology server | help |
--topo_implementation string | the topology implementation to use | help |
--topo_zk_auth_file string | auth to use when connecting to the zk topo server, file contents should be <scheme>:<auth>, e.g., digest:user:pass | help |
--topo_zk_base_timeout duration | zk base timeout (see zk.Connect) (default 30s) | help |
--topo_zk_max_concurrency int | maximum number of pending requests to send to a Zookeeper server. | help |
--topo_zk_tls_ca string | the server ca to use to validate servers when connecting to the zk topo server | help |
--topo_zk_tls_cert string | the cert to use to connect to the zk topo server, requires topo_zk_tls_key, enables TLS | help |
--topo_zk_tls_key string | the key to use to connect to the zk topo server, enables TLS | help |
--v Level | log level for V logs | help |
-v, --version | print binary version | help |
--vmodule vModuleFlag | comma-separated list of pattern=N settings for file-filtered logging | help |
--wait-replicas-timeout duration | Duration for which to wait for replica's to respond when issuing RPCs (default 30s) | help |