Comments (12)
When I enable jetstream with different domains in each server I get this output (notice the Missing line)
nats --trace --server nats://admin:admin@localhost:4222 server ls
╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ Server Overview │
├─────────────┬─────────────┬───────────┬───────────────┬─────┬───────┬──────┬────────┬─────┬────────┬─────┬──────┬────────┬───────────┤
│ Name │ Cluster │ IP │ Version │ JS │ Conns │ Subs │ Routes │ GWs │ Mem │ CPU │ Slow │ Uptime │ RTT │
├─────────────┼─────────────┼───────────┼───────────────┼─────┼───────┼──────┼────────┼─────┼────────┼─────┼──────┼────────┼───────────┤
│ leaf-server │ leaf-server │ 0.0.0.0 │ 2.3.0-beta.10 │ yes │ 0 │ 83 │ 0 │ 0 │ 30 MiB │ 0.0 │ 0 │ 16.31s │ 842.252µs │
│ hub-server │ │ 0.0.0.0 │ 2.3.0-beta.10 │ yes │ 1 │ 80 │ 0 │ 0 │ 32 MiB │ 0.2 │ 0 │ 12.94s │ 814.467µs │
├─────────────┼─────────────┼───────────┼───────────────┼─────┼───────┼──────┼────────┼─────┼────────┼─────┼──────┼────────┼───────────┤
│ │ 1 Clusters │ 2 Servers │ │ 2 │ 1 │ 163 │ │ │ 62 MiB │ │ 0 │ │ │
╰─────────────┴─────────────┴───────────┴───────────────┴─────┴───────┴──────┴────────┴─────┴────────┴─────┴──────┴────────┴───────────╯
Missing 4294967295 server(s)
╭────────────────────────────────────────────────────────────────────────────────╮
│ Cluster Overview │
├─────────────┬────────────┬───────────────────┬───────────────────┬─────────────┤
│ Cluster │ Node Count │ Outgoing Gateways │ Incoming Gateways │ Connections │
├─────────────┼────────────┼───────────────────┼───────────────────┼─────────────┤
│ leaf-server │ 1 │ 0 │ 0 │ 0 │
├─────────────┼────────────┼───────────────────┼───────────────────┼─────────────┤
│ │ 1 │ 0 │ 0 │ 0 │
╰─────────────┴────────────┴───────────────────┴───────────────────┴─────────────╯
from natscli.
hm, so this is must be the result of deteting the amount of connected servers via the new statz addition, can you show statsz output on these machines?
from natscli.
Being able to specify a receive count would be nice.
Here is statsz from both boxes.
> nats --server nats://admin:admin@localhost:4222 req '$SYS.REQ.SERVER.PING.STATSZ' ""
19:34:40 Sending request on "$SYS.REQ.SERVER.PING.STATSZ"
19:34:40 Received on "_INBOX.i83Y5ceMqgUJFLzdq5jGwp.tRMNmpQ1" rtt 599.115µs
{"server":{"name":"hub-server","host":"0.0.0.0","id":"NDIH47GRL7D6G3ZFGLJYJI6QGOU75JFOJBOYCBBQPKD7PQY3DBYVK6OH","ver":"2.3.0-beta.10","seq":48,"jetstream":false,"time":"2021-06-28T23:34:40.616254Z"},"statsz":{"start":"2021-06-28T23:32:20.529777Z","mem":37031936,"cores":16,"cpu":0.3,"connections":1,"total_connections":3,"active_accounts":2,"subscriptions":76,"sent":{"msgs":23,"bytes":9006},"received":{"msgs":12,"bytes":4799},"slow_consumers":0,"active_servers":2}}
>nats --server nats://admin:admin@localhost:4111 req '$SYS.REQ.SERVER.PING.STATSZ' ""
19:34:53 Sending request on "$SYS.REQ.SERVER.PING.STATSZ"
19:34:53 Received on "_INBOX.2KOPU3jzVDCwbYzurdtvdk.iAgntKdr" rtt 692.601µs
{"server":{"name":"leaf-server","host":"0.0.0.0","id":"NA23HJVAWYGXN57WIR743DOCTRDOYEWQYP7K25XH73YRVFMWWWBOKQ76","cluster":"leaf-server","ver":"2.3.0-beta.10","seq":30,"jetstream":false,"time":"2021-06-28T23:34:53.646743Z"},"statsz":{"start":"2021-06-28T23:32:16.771149Z","mem":33652736,"cores":16,"cpu":0,"connections":1,"total_connections":1,"active_accounts":2,"subscriptions":77,"sent":{"msgs":13,"bytes":6095},"received":{"msgs":22,"bytes":7947},"slow_consumers":0,"active_servers":2}}
>
btw --trace does not work on ping either
nats --server nats://admin:admin@localhost:4222 server ping --trace
hub-server rtt=693.965µs
leaf-server rtt=727.602µs
---- ping statistics ----
2 replies max: 0.00 min: 0.00 avg: 0.00
from natscli.
So is active servers wrong here? If it is we need to know why and fix that. Else I can’t rely on that number at all.
trace tend to be mainly added where APIs are accessed so many server req ones won’t have it.
You can specify the expected servers generally as last, optional, argument.
from natscli.
Ah so this must be because cluster name is not set in the hub? That should not be possible because jetstream requires it. Though your req results shows JS off while list shows JS on, are these the same servers and same settings producing both?
from natscli.
It's not set in the hub. But it's also not set in the leaf.
Yep same servers with config from above.
from natscli.
then this is working as expected, your non cluster named environment is not a cluster, why would it be reported as a cluster?
from natscli.
why does the non clustered leaf report as clustered then?
One non clustered server shows as clustered and the other one doesen't.
from natscli.
Statz for that leaf has "cluster":"leaf-server"
so its clearly configured with a cluster name, which the other doesnt have.
from natscli.
I literally did not configure that. see above
from natscli.
Servers are full of magical magic things doing magical setting changes for you. Somethings doing it :) I know in some cases we auto generate cluster names but I would imagine its not going to be auto generated as leaf-server
.
Regardless, this is the cause and I can only do what statz tells me alas
from natscli.
oh man magic is fine, inconsistency is not. but yeah, wrong place for this
from natscli.
Related Issues (20)
- nats str edit cannot update Subject Transform HOT 2
- A bug that was filed in nats.go HOT 2
- If user is set then token is not transmitted HOT 2
- Displayed ObjectStore digest is truncated HOT 1
- Not recognizing difference in stream configuration for sources HOT 1
- Support wildcard for KV get HOT 11
- Broken nats-cli arm64 binary HOT 3
- Stream info shows first and last timestamps incorrectly HOT 2
- Enable inactive-threshold flag while editing consumer HOT 2
- Add tooling for create sharded streams
- Extend --trace or add a --debug flag to see server connections HOT 2
- req: set exit status based on: response / header existing
- Incorrect local JetStream store directory when $XDG_DATA_HOME is defined HOT 1
- Change `--completion-script-bash` option to `completion bash` by convention
- Add support for the s390x architecture HOT 1
- Context subcommand "create" missing from CLI Menu HOT 2
- sub: allow multiple subjects HOT 1
- Consider making a new release HOT 2
- Upload of large object fails with `nats: error: nats: stalled with too many outstanding async published messages`
- Consumer pause/resume commands fail after selecting stream/consumer
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 natscli.