gLiveView starting error. Not sure why?

When running ./gLiveView.sh on my block producer node, I get the following error:

ERROR: You specified 12788 as your EKG port, but it looks like the cardano-node (PID: 289 ) is not listening on this port. Please update the config or kill the conflicting process first.

ERROR: gLiveView failed to load common env file
Please verify set values in 'User Variables' section in env file or log an issue on GitHub

I’m running both my block node and relay node on the same host, both in different podman containers. gLiveView was working on both before I reconfigured the /etc/prometheus/prometheus.yml file on my relay node. I could’ve touched something else, but I’m not sure what, and now gLiveView isn’t working on my block node.

I followed coincashew’s tutorial.

My containers:

$ podman ps
CONTAINER ID  IMAGE                               COMMAND     CREATED     STATUS             PORTS                                                                                                                     NAMES
d8f87e8321a6  localhost/cardano_block:2021-09-19  bash        2 days ago  Up 16 minutes ago  0.0.0.0:6000->6000/tcp, 0.0.0.0:9100->9100/tcp, 0.0.0.0:12798->12798/tcp                                                  focused_mcclintock
6f85d773a3a7  localhost/cardano_relay:2021-09-18  bash        2 days ago  Up 35 minutes ago  0.0.0.0:3000->3000/tcp, 0.0.0.0:7003->7003/tcp, 0.0.0.0:9090->9090/tcp, 0.0.0.0:9101->9101/tcp, 0.0.0.0:12799->12799/tcp  interesting_pascal

In my block container/node:

$ cat env

#CCLI="${HOME}/.cabal/bin/cardano-cli"                  # Override automatic detection of path to cardano-cli executable
#CNCLI="${HOME}/.cargo/bin/cncli"                       # Override automatic detection of path to cncli executable (https://github.com/AndrewWestberg/cncli)
#CNODE_HOME="/opt/cardano/cnode"                        # Override default CNODE_HOME path (defaults to /opt/cardano/cnode)
CNODE_PORT=6000                                         # Set node port
CONFIG="${NODE_HOME}/mainnet-config.json"               # Override automatic detection of node config path
SOCKET="${NODE_HOME}/db/socket"            # Override automatic detection of path to socket
#TOPOLOGY="${CNODE_HOME}/files/topology.json"           # Override default topology.json path
#LOG_DIR="${CNODE_HOME}/logs"                           # Folder where your logs will be sent to (must pre-exist)
#DB_DIR="${CNODE_HOME}/db"                              # Folder to store the cardano-node blockchain db
#UPDATE_CHECK="Y"                                       # Check for updates to scripts, it will still be prompted before proceeding (Y|N).
#TMP_DIR="/tmp/cnode"                                   # Folder to hold temporary files in the various scripts, each script might create additional subfolders
#USE_EKG="Y"                                            # Use EKG metrics from the node instead of Prometheus. Prometheus metrics yield slightly better performance but can be unresponsive at times (default EKG)
#EKG_HOST=127.0.0.1                                     # Set node EKG host IP
#EKG_PORT=12788                                         # Override automatic detection of node EKG port
#PROM_HOST=127.0.0.1                                    # Set node Prometheus host IP
#PROM_PORT=12798                                        # Override automatic detection of node Prometheus port
#EKG_TIMEOUT=3                                          # Maximum time in seconds that you allow EKG request to take before aborting (node metrics)
#CURL_TIMEOUT=10                                        # Maximum time in seconds that you allow curl file download to take before aborting (GitHub update process)
#BLOCKLOG_DIR="${CNODE_HOME}/guild-db/blocklog"         # Override default directory used to store block data for core node
#BLOCKLOG_TZ="UTC"                                      # TimeZone to use when displaying blocklog - https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
#SHELLEY_TRANS_EPOCH=208                                # Override automatic detection of shelley epoch start, e.g 208 for mainnet
#TG_BOT_TOKEN=""                                        # Uncomment and set to enable telegramSend function. To create your own BOT-token and Chat-Id follow guide at:
#TG_CHAT_ID=""                                          # https://cardano-community.github.io/guild-operators/Scripts/sendalerts
#TIMEOUT_LEDGER_STATE=300                               # Timeout in seconds for querying and dumping ledger-state
#IP_VERSION=4                                           # The IP version to use for push and fetch, valid options: 4 | 6 | mix (Default: 4)
#PGREST_API="http://127.0.0.1:8050"                     # Uncomment and set to enable PostgREST API queries against DB-Sync
#DBSYNC_QUERY_FOLDER="${CNODE_HOME}/files/dbsync/queries" # [advanced feature] Folder containing DB-Sync chain analysis queries

(EKG Port is not enabled?)

$ cat mainnet-topology.json 

 {
    "Producers": [
      {
        "addr": "10.0.0.213",
        "port": 7003,
        "valency": 1
      }
    ]
  }
$ cat startBlockProducingNode.sh 

#!/bin/bash
DIRECTORY=/home/block/cardano-my-node
PORT=6000
HOSTADDR=0.0.0.0
TOPOLOGY=${DIRECTORY}/mainnet-topology.json
DB_PATH=${DIRECTORY}/db
SOCKET_PATH=${DIRECTORY}/db/socket
CONFIG=${DIRECTORY}/mainnet-config.json
/usr/local/bin/cardano-node run --topology ${TOPOLOGY} --database-path ${DB_PATH} --socket-path ${SOCKET_PATH} --host-addr ${HOSTADDR} --port ${PORT} --config ${CONFIG}

In my relay container/node:

$ cat /etc/prometheus/prometheus.yml 

global:
  scrape_interval:     15s # By default, scrape targets every 15 seconds.

  # Attach these labels to any time series or alerts when communicating with
  # external systems (federation, remote storage, Alertmanager).
  external_labels:
    monitor: 'codelab-monitor'

# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label job=<job_name> to any timeseries scraped from this config.
  - job_name: 'prometheus'

    static_configs:
      - targets: ['localhost:9101']
      - targets: ['10.0.0.213:9100']
      - targets: ['10.0.0.213:12798']
        labels:
          alias: 'block-producer-node'
          type:  'cardano-node'
      - targets: ['localhost:12799']
        labels:
          alias: 'relaynode1'
          type:  'cardano-node'
$ cat mainnet-topology.json 

 {
    "Producers": [
      {
        "addr": "10.0.0.213",
        "port": 6000,
        "valency": 1
      },
      {
        "addr": "relays-new.cardano-mainnet.iohk.io",
        "port": 3001,
        "valency": 2
      }
    ]
  }
$ cat startRelayNode1.sh 

#!/bin/bash
DIRECTORY=/home/relay/cardano-my-node
PORT=7003
HOSTADDR=0.0.0.0
TOPOLOGY=${DIRECTORY}/mainnet-topology.json
DB_PATH=${DIRECTORY}/db
SOCKET_PATH=${DIRECTORY}/db/socket
CONFIG=${DIRECTORY}/mainnet-config.json
/usr/local/bin/cardano-node run --topology ${TOPOLOGY} --database-path ${DB_PATH} --socket-path ${SOCKET_PATH} --host-addr ${HOSTADDR} --port ${PORT} --config ${CONFIG}

I’m not really sure what I’m doing wrong. Any thoughts? Thanks.

EDIT: On another note, it looks like prometheus-node-exporter on my relay node is not working. So this is probably a prometheus config error rather than gLiveView. But I’m not sure what I misconfigured…

Restart the machine

Tried that. Restarted both containers and the host machine. Still no luck :confused: relay container not showing anything for gLiveView or Prometheus

EDIT: I just realized that the screenshot I provided shows that the block producer is the one reporting the machine usage, and the relay node itself is missing it’s own stats.

I just reinstalled the whole block container and gLive seems to be working now.