ensindexer-perf-testing

Automate end-to-end performance testing for ENSIndexer with per-handler timing collection.

41|19|Updated Dec 23, 2024
One-click install
npx skills add https://github.com/namehash/ensnode --skill ensindexer-perf-testing
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ensindexer-perf-testing
Source: https://github.com/namehash/ensnode/tree/main/.agents/skills/ensindexer-perf-testing
Command: npx skills add https://github.com/namehash/ensnode --skill ensindexer-perf-testing

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Automates end-to-end performance testing for the ENSIndexer by orchestrating deterministic baselining and per-handler timing collection.

Core Features & Use Cases

  • Captures wall-clock + per-handler timings for an ENSIndexer run.
  • Orchestrates prerequisite setup (Prometheus/Grafana, ENSRainbow ready, and clean state) to produce apples-to-apples baselines.
  • Supports comparing branches/configs and measuring plugin combinations under controlled conditions for repeatable results.

Quick Start

Launch the perf-testing workflow by following the guided steps to initialize Prometheus/Grafana, ENSRainbow, and the indexer, and capture baseline performance metrics.

Frequently Asked Questions about ensindexer-perf-testing

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run reproducible performance tests for an ENSIndexer instance?

To run reproducible performance tests for an ENSIndexer instance, this Skill automates end-to-end baselining and per-handler timing collection across local Postgres and ENSRainbow environments. It orchestrates prerequisite setup like Prometheus and Grafana to ensure controlled, apples-to-apples comparisons.

What do I need to set up before baseline testing ENSIndexer with Postgres?

Before baseline testing ENSIndexer with Postgres, you need a clean working tree, Docker daemon running, and Postgres at postgresql://postgres@localhost:5432/ponder. ENSRainbow must be hydrated and the DISABLE_ENSRAINBOW_HEAL environment variable set for baseline runs.

Can I compare ENSIndexer branches and plugin combinations under controlled conditions?

Yes, you can compare ENSIndexer branches, configurations, and plugin combinations under controlled conditions. The workflow orchestrates clean state initialization and deterministic baselining to capture wall-clock and per-handler timings for repeatable results.

How does Grafana and Prometheus integration work with ENSIndexer perf testing?

Grafana and Prometheus integration works with ENSIndexer perf testing by orchestrating their initialization as part of the guided setup workflow. This captures baseline performance metrics and wall-clock timings during the indexer run for visual monitoring and analysis.

Why are my ENSIndexer performance baseline comparisons inconsistent?

Inconsistent ENSIndexer performance baseline comparisons often occur when prerequisite setup is incomplete. Ensure you have a clean working tree, hydrated ENSRainbow data, and the DISABLE_ENSRAINBOW_HEAL environment variable set to produce deterministic, apples-to-apples results.