@@ -17,22 +17,42 @@ dns-benchmark benchmark --use-defaults
1717
1818</div >
1919
20+ ## 🎉 Today’s Release Highlights ![ new] ( https://img.shields.io/pypi/v/dns-benchmark-tool.svg?color=brightgreen&label=new )
21+
22+ We’ve added ** three powerful CLI commands** to make DNS benchmarking even more versatile:
23+
24+ - 🚀 ** top** — quick ranking of resolvers by speed and reliability
25+ - 📊 ** compare** — side‑by‑side benchmarking with detailed statistics and export options
26+ - 🔄 ** monitoring** — continuous performance tracking with alerts and logging
27+
28+ ``` bash
29+ # Quick resolver ranking
30+ dns-benchmark top --use-defaults
31+
32+ # Compare resolvers side-by-side
33+ dns-benchmark compare Cloudflare Google Quad9 --show-details
34+
35+ # Run monitoring for 1 hour with alerts
36+ dns-benchmark monitoring --use-defaults --interval 30 --duration 3600 \
37+ --alert-latency 150 --alert-failure-rate 5 --output monitor.log
38+ ```
39+
2040---
2141
2242[ ![ CI Tests] ( https://github.com/frankovo/dns-benchmark-tool/actions/workflows/test.yml/badge.svg )] ( https://github.com/frankovo/dns-benchmark-tool/actions/workflows/test.yml )
2343[ ![ Publish to TestPyPI] ( https://github.com/frankovo/dns-benchmark-tool/actions/workflows/testpypi.yml/badge.svg )] ( https://github.com/frankovo/dns-benchmark-tool/actions/workflows/testpypi.yml )
2444[ ![ Publish to PyPI] ( https://github.com/frankovo/dns-benchmark-tool/actions/workflows/pypi.yml/badge.svg )] ( https://github.com/frankovo/dns-benchmark-tool/actions/workflows/pypi.yml )
25- [ ![ PyPI version] ( https://img.shields.io/pypi/v/dns-benchmark-tool.svg )] ( https://pypi.org/project/dns-benchmark-tool/ )
45+ [ ![ PyPI version] ( https://img.shields.io/pypi/v/dns-benchmark-tool.svg?color=brightgreen )] ( https://pypi.org/project/dns-benchmark-tool/ )
2646
2747![ Python Version] ( https://img.shields.io/badge/python-3.9%2B-blue.svg )
2848![ License] ( https://img.shields.io/badge/license-MIT-green.svg )
2949![ Coverage] ( https://img.shields.io/badge/coverage-91%25-brightgreen.svg )
3050
31- [ ![ Downloads] ( https://img.shields.io/pypi/dm/dns-benchmark-tool.svg )] ( https://pypi.org/project/dns-benchmark-tool/ )
51+ [ ![ Downloads] ( https://img.shields.io/pypi/dm/dns-benchmark-tool.svg?color=blueviolet )] ( https://pypi.org/project/dns-benchmark-tool/ )
3252[ ![ GitHub stars] ( https://img.shields.io/github/stars/frankovo/dns-benchmark-tool.svg?style=social&label=Star )] ( https://github.com/frankovo/dns-benchmark-tool/stargazers )
3353[ ![ GitHub forks] ( https://img.shields.io/github/forks/frankovo/dns-benchmark-tool.svg?style=social&label=Fork )] ( https://github.com/frankovo/dns-benchmark-tool/network/members )
34- [ ![ Issues] ( https://img.shields.io/github/issues/frankovo/dns-benchmark-tool.svg )] ( https://github.com/frankovo/dns-benchmark-tool/issues )
35- [ ![ Last commit] ( https://img.shields.io/github/last-commit/frankovo/dns-benchmark-tool.svg )] ( https://github.com/frankovo/dns-benchmark-tool/commits/main )
54+ [ ![ Issues] ( https://img.shields.io/github/issues/frankovo/dns-benchmark-tool.svg?color=orange )] ( https://github.com/frankovo/dns-benchmark-tool/issues )
55+ [ ![ Last commit] ( https://img.shields.io/github/last-commit/frankovo/dns-benchmark-tool.svg?color=blue )] ( https://github.com/frankovo/dns-benchmark-tool/commits/main )
3656[ ![ Main branch protected] ( https://img.shields.io/badge/branch%20protection-main%20✅-brightgreen )] ( https://github.com/frankovo/dns-benchmark-tool/blob/main/RELEASE.md )
3757
3858## Why DNS Benchmarking?
@@ -114,17 +134,6 @@ dns-benchmark benchmark --resolvers data/resolvers.json --domains data/domains.t
114134# Results saved to ./benchmark_results/
115135```
116136
117- ## Key Features
118-
119- ✅ ** Multi-resolver benchmarking** - Compare Google, Cloudflare, Quad9, OpenDNS, and custom resolvers
120- ✅ ** Multiple record types** - Test A, AAAA, MX, TXT, NS, CNAME, and more
121- ✅ ** Rich analytics** - Per-resolver, per-domain, and per-record-type statistics
122- ✅ ** Export formats** - CSV, Excel, PDF, JSON for reporting and automation
123- ✅ ** High concurrency** - Async queries with configurable limits
124- ✅ ** Cache control** - Test with/without DNS caching
125- ✅ ** Iteration support** - Run multiple test iterations for reliability
126- ✅ ** CI/CD ready** - Quiet mode, JSON output, exit codes for automation
127-
128137---
129138
130139## 📖 Usage Examples
@@ -296,6 +305,75 @@ dns-benchmark benchmark \
296305
297306---
298307
308+ ## ⚡ CLI Commands
309+
310+ The DNS Benchmark Tool now includes three specialized commands for different workflows:
311+
312+ ### 🚀 Top
313+
314+ Quickly rank resolvers by speed and reliability.
315+
316+ ``` bash
317+ # Rank resolvers quickly
318+ dns-benchmark top --use-defaults
319+
320+ # Use custom domain list
321+ dns-benchmark top -d domains.txt
322+
323+ # Export results to JSON
324+ dns-benchmark top -o results.json
325+ ```
326+
327+ ---
328+
329+ ### 📊 Compare
330+
331+ Benchmark resolvers side‑by‑side with detailed statistics.
332+
333+ ``` bash
334+ # Compare Cloudflare, Google, and Quad9
335+ dns-benchmark compare Cloudflare Google Quad9
336+
337+ # Compare by IP addresses
338+ dns-benchmark compare 1.1.1.1 8.8.8.8 9.9.9.9
339+
340+ # Show detailed per-domain breakdown
341+ dns-benchmark compare Cloudflare Google --show-details
342+
343+ # Export results to CSV
344+ dns-benchmark compare Cloudflare Google -o results.csv
345+ ```
346+
347+ ---
348+
349+ ### 🔄 Monitoring
350+
351+ Continuously monitor resolver performance with alerts.
352+
353+ ``` bash
354+ # Monitor default resolvers continuously (every 60s)
355+ dns-benchmark monitoring --use-defaults
356+
357+ # Monitor with custom resolvers and domains
358+ dns-benchmark monitoring -r resolvers.json -d domains.txt
359+
360+ # Run monitoring for 1 hour with alerts
361+ dns-benchmark monitoring --use-defaults --interval 30 --duration 3600 \
362+ --alert-latency 150 --alert-failure-rate 5 --output monitor.log
363+ ```
364+
365+ ---
366+
367+ ### 🌟 Command Showcase
368+
369+ | Command | Purpose | Typical Use Case | Key Options | Output |
370+ | --------------| ---------| ------------------| -------------| --------|
371+ | ** top** | Quick ranking of resolvers by speed and reliability | Fast check to see which resolver is best right now | ` --domains ` , ` --record-types ` , ` --iterations ` , ` --output ` | Sorted list of resolvers with latency & success rate |
372+ | ** compare** | Side‑by‑side comparison of specific resolvers | Detailed benchmarking across chosen resolvers/domains | ` --domains ` , ` --record-types ` , ` --iterations ` , ` --output ` , ` --show-details ` | Table of resolvers with latency, success rate, per‑domain breakdown |
373+ | ** monitoring** | Continuous monitoring with alerts | Real‑time tracking of resolver performance over time | ` --interval ` , ` --duration ` , ` --alert-latency ` , ` --alert-failure-rate ` , ` --output ` , ` --use-defaults ` | Live status indicators, alerts, optional log file |
374+
375+ ---
376+
299377## Feedback & Community
300378
301379### Share Your Input
0 commit comments