Comments (4)
This is an issue with the Tendermint RPC client, and it's not likely to be fixed anytime soon without an upstream patch. I've spent hours trying to track down what's going on in the code. The wss support in the client is incomplete and somehow it messes up the Dialer it hands off to Gorilla. There are probably other issues beyond that. I've had a difficult time trying to debug it. Maybe the correct approach would be to skip using the TM client entirely and just use Gorilla. I'll have to think about how difficult that would be, probably not a horribly big refactor.
from tenderduty.
Good news on this, for v2 tenderduty will use gorilla directly, and not use the tendermint client for websocket connections. This is working on the pre-alpha version, but going to leave the ticket open until there is a beta release.
from tenderduty.
Fantastic tool! Already running from Releasev2 branch.
The tool isn't connecting to the next RPC endpoint when multiple are given, and basically is stuck with the one failing one.
In my case, I had used
- url: https://cosmos-rpc.polkachu.com:443
alert_if_down: no
- url: https://rpc.cosmos.network:443
alert_if_down: no
But it doesn't even get to the second rpc server, the below error keeps looping and I see 0/2 connected in dashboard,
6:20:41 PM - could not dial ws client to wss://cosmos-rpc.polkachu.com:443/websocket: websocket: bad handshake
6:20:41 PM - ⚙️ found cosmosvaloper1sjllsnramtg3ewxqwwrwjxfgc4n4ef9u2lcnj0 (🐠stake.fish) in validator set
...
But when removing the polkachu rpc, it connects to the rpc.cosmos.network and works happily.
What's also scary is it doesn't send out any alerts either! The could be considered another bug. Maybe because it also restarts in between?
To summarize:
- Alerting needs to account for such edge case bugs too
- Try next endpoint instead of looping/restarting on websocket issue
Thanks for the great work!
from tenderduty.
Tenderduty v2 now uses the gorilla websocket client instead of tendermint's. TLS now works
from tenderduty.
Related Issues (20)
- panic: pubkey is incorrect size HOT 3
- possible http client resource leak HOT 1
- Dashboard alert for % missed not cleared.
- Feature: display validator voting power
- RPC connection error (https) HOT 1
- Upgrade (v13) Time Reached, No Alarm
- Update Recommended Installation Procedure?
- Validator status and blockheight prometheus metrics
- Endpoint metrics are not published when all rpc are not available.
- feature: add check for frozen node HOT 2
- Running tenderduty behind a reverse proxy (Nginx) HOT 1
- feature: Disk space / Resources monitoring with node export prometheus
- Issue: not getting status data on Sei testnet network (Atlantic 2) HOT 3
- Bug: Restarting tenderduty while alert is active causes that alert to struck forever and never produce any new alert (Critical)
- Slack Alerts Bug HOT 1
- UPX not found HOT 1
- Information disclosure vulnerability at /debug/vars
- [FEATURE REQUEST] Add notification on initialisation of tenderduty for confirmation of setup HOT 1
- Feature: Support minimum-signed threshold HOT 1
- Alert only reminds once HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tenderduty.