stack-orchestrator/stack_orchestrator/data/stacks/sushiswap-v3
Prathamesh Musale 4acb06325b Update watcher dashboard and config templates (#835)
Part of [Metrics and logging for GQL queries in watcher](https://www.notion.so/Metrics-and-logging-for-GQL-queries-in-watcher-928c692292b140a2a4f52cda9795df5e)

- Update watcher config templates after config refactoring
- Mount watcher GQL query log files on volumes
- Update watcher dashboard to
  - add a panel to show latest processed block number
  - use latest processed block from sync status for diff values

Co-authored-by: Nabarun <nabarun@deepstacksoft.com>
Reviewed-on: cerc-io/stack-orchestrator#835
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-06-12 11:52:51 +00:00
..
README.md Update subgraph watcher stacks to configure multiple RPC endpoints (#822) 2024-05-10 04:58:30 +00:00
stack.yml Update watcher dashboard and config templates (#835) 2024-06-12 11:52:51 +00:00

SushiSwap v3 Watcher

Setup

Clone required repositories:

laconic-so --stack sushiswap-v3 setup-repositories --git-ssh --pull

Build the container images:

laconic-so --stack sushiswap-v3 build-containers

Deploy

Create a spec file for the deployment:

laconic-so --stack sushiswap-v3 deploy init --output sushiswap-v3-spec.yml

Ports

Edit network in the spec file to map container ports to host ports as required:

...
network:
  ports:
    sushiswap-v3-watcher-db:
     - '5432'
    sushiswap-v3-watcher-job-runner:
     - 9000:9000
    sushiswap-v3-watcher-server:
     - 127.0.0.1:3008:3008
     - 9001:9001

Create a deployment

Create a deployment from the spec file:

laconic-so --stack sushiswap-v3 deploy create --spec-file sushiswap-v3-spec.yml --deployment-dir sushiswap-v3-deployment

Configuration

Inside deployment directory, open the config.env file and set following env variables:

# External Filecoin (ETH RPC) endpoint to point the watcher to
CERC_ETH_RPC_ENDPOINTS=https://example-lotus-endpoint-1/rpc/v1,https://example-lotus-endpoint-2/rpc/v1

Start the deployment

laconic-so deployment --dir sushiswap-v3-deployment start
  • To list down and monitor the running containers:

    # With status
    docker ps -a
    
    # Check logs for a container
    docker logs -f <CONTAINER_ID>
    
  • Open the GQL playground at http://localhost:3008/graphql

    # Example query
    {
      _meta {
        block {
          number
          timestamp
        }
        hasIndexingErrors
      }
    
      factories {
        id
        poolCount
      }
    }
    

Clean up

Stop all the sushiswap-v3 services running in background:

# Only stop the docker containers
laconic-so deployment --dir sushiswap-v3-deployment stop

# Run 'start' to restart the deployment

To stop all the sushiswap-v3 services and also delete data:

# Stop the docker containers
laconic-so deployment --dir sushiswap-v3-deployment stop --delete-volumes

# Remove deployment directory (deployment will have to be recreated for a re-run)
rm -r sushiswap-v3-deployment