stakeconomy / solanamonitoring

GNU General Public License v3.0
208 stars 45 forks source link

Does this still work? #18

Open swedeape100 opened 6 hours ago

swedeape100 commented 6 hours ago

After setting up I only see like 5% of data of all the visualizations on the dashboard. And none of them were related to Solana chain state information.

Jomossey commented 3 hours ago

@swedeape100 Have you checked the settings or filters to ensure everything is correctly configured for the visualizations to display the right data? Double-checking those settings might help you see the complete information you're looking for.

swedeape100 commented 1 hour ago

@Jomossey on grafana everything seemed right, there was just no such table even for the chain information. Table "autogen""does not even exist in influxdb. I only see the node data (cpu, memory, etc). Is there anything I need to configure on the solana validator node?

Jomossey commented 1 hour ago

@swedeape100 Check the configuration settings on the Solana validator node to ensure that it's set up to collect and provide the chain state information. Once the node is properly configured, the dashboard should start showing the relevant Solana chain data.

swedeape100 commented 1 hour ago

@Jomossey I do not see any solana-validator settings for collecting metrics. Neither in any tutorials anything is said about that.

USAGE:
    solana-validator [FLAGS] [OPTIONS] --ledger <DIR> [SUBCOMMAND]

FLAGS:
        --accounts-db-test-hash-calculation
            Enables testing of hash calculation using stores in AccountsHashVerifier. This has a computational cost.

        --cuda
            Use CUDA

        --disable-banking-trace
            Disables the banking trace

        --enable-bigtable-ledger-upload
            Upload new confirmed blocks into a BigTable instance

        --enable-extended-tx-metadata-storage
            Include CPI inner instructions, logs, and return data in the historical transaction info stored

        --enable-rpc-bigtable-ledger-storage
            Fetch historical transaction info from a BigTable instance as a fallback to local ledger data

        --enable-rpc-transaction-history
            Enable historical transaction info over JSON RPC, including the 'getConfirmedBlock' API.  This will cause an
            increase in disk usage and IOPS
        --full-rpc-api
            Expose RPC methods for querying chain state and transaction history

    -h, --help
            Prints help information

        --no-genesis-fetch
            Do not fetch genesis from the cluster

        --no-incremental-snapshots
            Disable incremental snapshots by setting this flag. When enabled, --snapshot-interval-slots will set the
            incremental snapshot interval. To set the full snapshot interval, use --full-snapshot-interval-slots.
        --no-snapshot-fetch
            Do not attempt to fetch a snapshot from the cluster, start from a local snapshot if present

        --no-voting
            Launch validator without voting

        --enable-rpc-obsolete_v1_7
            Enable the obsolete RPC methods removed in v1.7

        --only-known-rpc
            Use the RPC service of known validators only

        --private-rpc
            Do not publish the RPC port for use by others

        --replay-slots-concurrently
            Allow concurrent replay of slots on different forks

        --require-tower
            Refuse to start if saved tower state is not found

        --restricted-repair-only-mode
            Do not publish the Gossip, TPU, TVU or Repair Service ports causing the validator to operate in a limited            capacity that reduces its exposure to the rest of the cluster. The --no-voting flag is implicit when this            flag is enabled
        --rpc-pubsub-enable-block-subscription
            Enable the unstable RPC PubSub `blockSubscribe` subscription

        --rpc-pubsub-enable-vote-subscription
            Enable the unstable RPC PubSub `voteSubscribe` subscription

        --rpc-scan-and-fix-roots
            Verifies blockstore roots on boot and fixes any gaps

        --rpc-send-transaction-also-leader
            With `--rpc-send-transaction-tpu-peer HOST:PORT`, also send to the current leader

        --skip-seed-phrase-validation
            Skip validation of seed phrases. Use this if your phrase does not use the BIP39 official English word list

        --skip-startup-ledger-verification
            Skip ledger verification at validator bootup.

        --tpu-disable-quic
            Do not use QUIC to send transactions.

        --tpu-enable-udp
            Enable UDP for receiving/sending transactions.

    -V, --version
            Prints version information

OPTIONS:
        --account-index-exclude-key <KEY>...
            When account indexes are enabled, exclude this key from the index.

        --account-index-include-key <KEY>...
            When account indexes are enabled, only include specific keys in the index. This overrides --account-index-
            exclude-key.
        --account-index <INDEX>...
            Enable an accounts index, indexed by the selected account field [possible values: program-id, spl-token-
            owner, spl-token-mint]
        --accounts <PATHS>...
            Comma separated persistent accounts location

        --account-shrink-path <PATH>...
            Path to accounts shrink path which can hold a compacted account set.

        --accounts-db-cache-limit-mb <MEGABYTES>
            How large the write cache for account data can become. If this is exceeded, the cache is flushed more
            aggressively.
        --accounts-hash-cache-path <PATH>
            Use PATH as accounts hash cache location [default: <LEDGER>/accounts_hash_cache]

        --accounts-index-bins <BINS>
            Number of bins to divide the accounts index into

        --accounts-index-memory-limit-mb <MEGABYTES>
            How much memory the accounts index can consume. If this is exceeded, some account index entries will be
            stored on disk.
        --accounts-index-path <PATH>...
            Persistent accounts-index location. May be specified multiple times. [default: [ledger]/accounts_index]

        --accounts-index-scan-results-limit-mb <MEGABYTES>
            How large accumulated results from an accounts index scan can become. If this is exceeded, the scan aborts.

        --accounts-shrink-optimize-total-space <BOOLEAN>
            When this is set to true, the system will shrink the most sparse accounts and when the overall shrink ratio
            is above the specified accounts-shrink-ratio, the shrink will stop and it will skip all other less sparse            accounts. [default: true]
        --accounts-shrink-ratio <RATIO>
            Specifies the shrink ratio for the accounts to be shrunk. The shrink ratio is defined as the ratio of the            bytes alive over the  total bytes used. If the account's shrink ratio is less than this ratio it becomes a
            candidate for shrinking. The value must between 0. and 1.0 inclusive. [default: 0.8]
        --authorized-voter <KEYPAIR>...
            Include an additional authorized voter keypair. May be specified multiple times. [default: the --identity            keypair]
        --enable-banking-trace <BYTES>
            Enables the banking trace explicitly, which is enabled by default and writes trace files for simulate-
            leader-blocks, retaining up to the default or specified total bytes in the ledger. This flag can be
            used to override its byte limit. [default: 15032385536]
        --bind-address <HOST>
            IP address to bind the validator ports [default: 0.0.0.0]

        --block-production-method <METHOD>
            Switch transaction scheduling method for producing ledger entries [default: thread-local-multi-iterator]
            [possible values: thread-local-multi-iterator, central-scheduler]
        --check-vote-account <RPC_URL>
            Sanity check vote account state at startup. The JSON RPC endpoint at RPC_URL must expose `--full-rpc-api`
        --contact-debug-interval <CONTACT_DEBUG_INTERVAL>
            Milliseconds between printing contact debug from gossip. [default: 120000]

        --debug-key <ADDRESS>...
            Log when transactions are processed which reference a given key.

        --dev-halt-at-slot <SLOT>
            Halt the validator when it reaches the given slot

        --dynamic-port-range <MIN_PORT-MAX_PORT>
            Range to use for dynamically assigned ports [default: 8000-10000]

    -n, --entrypoint <HOST:PORT>...
            Rendezvous with the cluster at this gossip entrypoint

        --etcd-cacert-file <FILE>
            verify the TLS certificate of the etcd endpoint using this CA bundle

        --etcd-cert-file <FILE>
            TLS certificate to use when establishing a connection to the etcd endpoint

        --etcd-domain-name <DOMAIN>
            domain name against which to verify the etcd server’s TLS certificate [default: localhost]

        --etcd-endpoint <HOST:PORT>...
            etcd gRPC endpoint to connect with

        --etcd-key-file <FILE>
            TLS key file to use when establishing a connection to the etcd endpoint

        --expected-bank-hash <HASH>
            When wait-for-supermajority <x>, require the bank at <x> to have this hash

        --expected-genesis-hash <HASH>
            Require the genesis have this hash

        --expected-shred-version <VERSION>
            Require the shred version be this value

        --full-snapshot-interval-slots <NUMBER>
            Number of slots between generating full snapshots. Must be a multiple of the incremental snapshot interval.
            [default: 25000]
        --geyser-plugin-config <FILE>...
            Specify the configuration file for the Geyser plugin.

        --gossip-host <HOST>
            Gossip DNS name or IP address for the validator to advertise in gossip [default: ask --entrypoint, or
            127.0.0.1 when --entrypoint is not provided]
        --gossip-port <PORT>
            Gossip port number for the validator

        --gossip-validator <VALIDATOR IDENTITY>...
            A list of validators to gossip with.  If specified, gossip will not push/pull from from validators outside
            this set. [default: all validators]
        --hard-fork <SLOT>...
            Add a hard fork at this slot

        --health-check-slot-distance <SLOT_DISTANCE>
            Report this validator healthy if its latest optimistically confirmed slot that has been replayed is no
            further behind than this number of slots from the cluster latest optimistically confirmed slot [default:
            150]
    -i, --identity <KEYPAIR>
            Validator identity keypair

        --incremental-snapshot-archive-path <DIR>
            Use DIR as separate location for incremental snapshot archives [default: --snapshots value]

        --incremental-snapshot-interval-slots <NUMBER>
            Number of slots between generating snapshots, 0 to disable snapshots [default: 100]

        --init-complete-file <FILE>
            Create this file if it doesn't already exist once validator initialization is complete

        --known-validator <VALIDATOR IDENTITY>...
            A snapshot hash must be published in gossip by this validator to be accepted. May be specified multiple
            times. If unspecified any snapshot hash will be accepted
    -l, --ledger <DIR>
            Use DIR as ledger location [default: ledger]

        --limit-ledger-size <SHRED_COUNT>
            Keep this amount of shreds in root slots.

        --log-messages-bytes-limit <BYTES>
            Maximum number of bytes written to the program log before truncation

    -o, --log <FILE>
            Redirect logging to the specified file, '-' for standard error. Sending the SIGUSR1 signal to the validator
            process will cause it to re-open the log file
        --max-genesis-archive-unpacked-size <NUMBER>
            maximum total uncompressed file size of downloaded genesis archive [default: 10485760]

        --maximum-full-snapshots-to-retain <NUMBER>
            The maximum number of full snapshot archives to hold on to when purging older snapshots. [default: 2]

        --maximum-incremental-snapshots-to-retain <NUMBER>
            The maximum number of incremental snapshot archives to hold on to when purging older snapshots. [default: 4]

        --maximum-local-snapshot-age <NUMBER_OF_SLOTS>
            Reuse a local snapshot if it's less than this many slots behind the highest snapshot available for download
            from other validators [default: 2500]
        --maximum-snapshot-download-abort <MAXIMUM_SNAPSHOT_DOWNLOAD_ABORT>
            The maximum number of times to abort and retry when encountering a slow snapshot download. [default: 5]

        --minimal-snapshot-download-speed <MINIMAL_SNAPSHOT_DOWNLOAD_SPEED>
            The minimal speed of snapshot downloads measured in bytes/second. If the initial download speed falls below
            this threshold, the system will retry the download against a different rpc node. [default: 10485760]
        --public-rpc-address <HOST:PORT>
            RPC address for the validator to advertise publicly in gossip. Useful for validators running behind a load
            balancer or proxy [default: use --rpc-bind-address / --rpc-port]
        --public-tpu-address <HOST:PORT>
            Specify TPU address to advertise in gossip [default: ask --entrypoint or localhostwhen --entrypoint is not
            provided]
        --public-tpu-forwards-address <HOST:PORT>
            Specify TPU Forwards address to advertise in gossip [default: ask --entrypoint or localhostwhen --entrypoint
            is not provided]
        --repair-validator <VALIDATOR IDENTITY>...
            A list of validators to request repairs from. If specified, repair will not request from validators outside
            this set [default: all validators]
        --rocksdb-fifo-shred-storage-size <SHRED_STORAGE_SIZE_BYTES>
            The shred storage size in bytes. The suggested value is at least 50% of your ledger storage size. If this            argument is unspecified, we will assign a proper value based on --limit-ledger-size.  If --limit-ledger-size
            is not presented, it means there is no limitation on the ledger size and thus
            rocksdb_fifo_shred_storage_size will also be unbounded.
        --rocksdb-shred-compaction <ROCKSDB_COMPACTION_STYLE>
            Controls how RocksDB compacts shreds. *WARNING*: You will lose your ledger data when you switch between
            options. Possible values are: 'level': stores shreds using RocksDB's default (level) compaction. 'fifo':
            stores shreds under RocksDB's FIFO compaction. This option is more efficient on disk-write-bytes of the
            ledger store. [default: level]  [possible values: level, fifo]
        --rpc-bigtable-app-profile-id <APP_PROFILE_ID>
            Bigtable application profile id to use in requests [default: default]

        --rpc-bigtable-instance-name <INSTANCE_NAME>
            Name of the Bigtable instance to upload to [default: solana-ledger]

        --rpc-bigtable-max-message-size <BYTES>
            Max encoding and decoding message size used in Bigtable Grpc client [default: 67108864]

        --rpc-bigtable-timeout <SECONDS>
            Number of seconds before timing out RPC requests backed by BigTable [default: 30]

        --rpc-bind-address <HOST>
            IP address to bind the RPC port [default: 127.0.0.1 if --private-rpc is present, otherwise use --bind-
            address]
        --rpc-faucet-address <HOST:PORT>
            Enable the JSON RPC 'requestAirdrop' API with this faucet address.

        --rpc-max-multiple-accounts <MAX ACCOUNTS>
            Override the default maximum accounts accepted by the getMultipleAccounts JSON RPC method [default: 100]

        --rpc-max-request-body-size <BYTES>
            The maximum request body size accepted by rpc service [default: 51200]

        --rpc-niceness-adjustment <ADJUSTMENT>
            Add this value to niceness of RPC threads. Negative value increases priority, positive value decreases
            priority. [default: 0]
        --rpc-port <PORT>
            Enable JSON RPC on this port, and the next port for the RPC websocket

        --rpc-pubsub-max-active-subscriptions <NUMBER>
            The maximum number of active subscriptions that RPC PubSub will accept across all connections. [default:
            1000000]
        --rpc-pubsub-notification-threads <NUM_THREADS>
            The maximum number of threads that RPC PubSub will use for generating notifications. 0 will disable RPC
            PubSub notifications
        --rpc-pubsub-queue-capacity-bytes <BYTES>
            The maximum total size of notifications that RPC PubSub will store across all connections. [default:
            268435456]
        --rpc-pubsub-queue-capacity-items <NUMBER>
            The maximum number of notifications that RPC PubSub will store across all connections. [default: 10000000]

        --rpc-pubsub-worker-threads <NUMBER>
            PubSub worker threads [default: 4]

        --rpc-send-default-max-retries <NUMBER>
            The maximum number of transaction broadcast retries when unspecified by the request, otherwise retried until
            expiration.
        --rpc-send-leader-count <NUMBER>
            The number of upcoming leaders to which to forward transactions sent via rpc service. [default: 2]

        --rpc-send-retry-ms <MILLISECS>
            The rate at which transactions sent via rpc service are retried. [default: 2000]

        --rpc-send-service-max-retries <NUMBER>
            The maximum number of transaction broadcast retries, regardless of requested value. [default:
            18446744073709551615]
        --rpc-send-transaction-tpu-peer <HOST:PORT>...
            Peer(s) to broadcast transactions to instead of the current leader

        --rpc-threads <NUMBER>
            Number of threads to use for servicing RPC requests [default: 64]

        --snapshot-archive-format <ARCHIVE_TYPE>
            Snapshot archive format to use. [default: zstd]  [possible values: zstd, lz4]

        --snapshot-packager-niceness-adjustment <ADJUSTMENT>
            Add this value to niceness of snapshot packager thread. Negative value increases priority, positive value            decreases priority. [default: 0]
        --snapshot-version <SNAPSHOT_VERSION>
            Output snapshot version [default: 1.2.0]

        --snapshots <DIR>
            Use DIR as snapshot location [default: --ledger value]

        --staked-nodes-overrides <PATH>
            Provide path to a yaml file with custom overrides for stakes of specific
                                        identities. Overriding the amount of stake this validator considers
                                        as valid for other peers in network. The stake amount is used for calculating                                        number of QUIC streams permitted from the peer and vote packet sender stage.
                                        Format of the file: `staked_map_id: {<pubkey>: <SOL stake amount>}
        --tower <DIR>
            Use DIR as file tower storage location [default: --ledger value]

        --tower-storage <tower_storage>
            Where to store the tower [default: file]  [possible values: file, etcd]

        --tpu-coalesce-ms <MILLISECS>
            Milliseconds to wait in the TPU receiver for packet coalescing.

        --tpu-connection-pool-size <tpu_connection_pool_size>
            Controls the TPU connection pool size per remote address [default: 1]

        --use-snapshot-archives-at-startup <use_snapshot_archives_at_startup>
            At startup, when should snapshot archives be extracted versus using what is already on disk?
            Specifying "always" will always startup by extracting snapshot archives and disregard any snapshot-related
            state already on disk. Note that starting up from snapshot archives will incur the runtime costs associated
            with extracting the archives and rebuilding the local state.
            Specifying "never" will never startup from snapshot archives and will only use snapshot-related state
            already on disk. If there is no state already on disk, startup will fail. Note, this will use the latest
            state available, which may be newer than the latest snapshot archive.
            Specifying "when-newest" will use snapshot-related state already on disk unless there are snapshot archives
            newer than it. This can happen if a new snapshot archive is downloaded while the node is stopped. [default:
            when-newest]  [possible values: always, never, when-newest]
        --vote-account <ADDRESS>
            Validator vote account public key.  If unspecified voting will be disabled. The authorized voter for the
            account must either be the --identity keypair or with the --authorized-voter argument
        --wait-for-supermajority <SLOT>
            After processing the ledger and the next slot is SLOT, wait until a supermajority of stake is visible on
            gossip before starting PoH
        --wal-recovery-mode <MODE>
            Mode to recovery the ledger db write ahead log. [possible values: tolerate_corrupted_tail_records,
            absolute_consistency, point_in_time, skip_any_corrupted_record]

SUBCOMMANDS:
    authorized-voter           Adjust the validator authorized voters
    contact-info               Display the validator's contact info
    exit                       Send an exit request to the validator
    help                       Prints this message or the help of the given subcommand(s)
    init                       Initialize the ledger directory then exit
    monitor                    Monitor the validator
    plugin                     Manage and view geyser plugins
    repair-shred-from-peer     Request a repair from the specified validator
    repair-whitelist           Manage the validator's repair protocol whitelist
    run                        Run the validator
    set-identity               Set the validator identity
    set-log-filter             Adjust the validator log filter
    set-public-address         Specify addresses to advertise in gossip
    staked-nodes-overrides     Overrides stakes of specific node identities.
    wait-for-restart-window    Monitor the validator for a good time to restart
swedeape100 commented 1 hour ago
cpu
disk
diskio
kernel
mem
net
netstat
processes
swap
system

These are the tables that are being created on infludc.