Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(dashmate): doctor diagnostic #2085

Merged
merged 43 commits into from
Sep 17, 2024
Merged
Show file tree
Hide file tree
Changes from 21 commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
e9727be
feat(dashmate): doctor analysis
shumkov Aug 27, 2024
e2691b2
feat: finish container and add system checks
shumkov Sep 4, 2024
7bc62db
feat: add disk IO check
shumkov Sep 5, 2024
5752a3c
Merge remote-tracking branch 'origin/v1.3-dev' into feat/dashmate/doc…
shumkov Sep 6, 2024
c4e43b6
feat: check zerossl issues
shumkov Sep 11, 2024
9860cb4
feat: add more checks
shumkov Sep 14, 2024
b7301db
refactor: move analysis to a saparate function for testability
shumkov Sep 14, 2024
4017aaf
feat: accomplish doctor commands
shumkov Sep 15, 2024
e14b477
docs: update readme
shumkov Sep 15, 2024
c2249c1
chore: handle empty samples data
shumkov Sep 15, 2024
028f6cd
chore: handle empty ssl data
shumkov Sep 15, 2024
fd96952
refactor: remove unused option
shumkov Sep 15, 2024
1f82134
docs: fix wording in readme
shumkov Sep 15, 2024
253c24b
Merge remote-tracking branch 'origin/feat/dashmate/doctor-analisis' i…
shumkov Sep 15, 2024
8fb5a0d
feat: confirm archive creation before collecting
shumkov Sep 15, 2024
2fda113
chore: handle partial samples
shumkov Sep 15, 2024
4c6f59c
test: verifySystemRequirementsFactory
shumkov Sep 15, 2024
1365ff5
test: validateZeroSslCertificateFactory
shumkov Sep 15, 2024
f9a0ff1
chore: add problems for masternode status
shumkov Sep 15, 2024
ace7ef5
style: fix linter errors
shumkov Sep 15, 2024
80d7e0a
chore: improve texts wording
shumkov Sep 16, 2024
d9b23b3
chore: more text improvements
shumkov Sep 16, 2024
791c458
Update packages/dashmate/README.md
shumkov Sep 16, 2024
79c2a62
Update packages/dashmate/README.md
shumkov Sep 16, 2024
b8aeeea
Update packages/dashmate/README.md
shumkov Sep 16, 2024
1ed1d67
Update packages/dashmate/package.json
shumkov Sep 16, 2024
9dd3847
Update packages/dashmate/src/commands/doctor/index.js
shumkov Sep 16, 2024
b832eaa
Update packages/dashmate/src/commands/doctor/report.js
shumkov Sep 16, 2024
f2e6347
Update packages/dashmate/src/doctor/verifySystemRequirementsFactory.js
shumkov Sep 16, 2024
574273f
Update packages/dashmate/src/doctor/verifySystemRequirementsFactory.js
shumkov Sep 16, 2024
b72ca98
Update packages/dashmate/src/doctor/verifySystemRequirementsFactory.js
shumkov Sep 16, 2024
68201d3
Update packages/dashmate/src/doctor/verifySystemRequirementsFactory.js
shumkov Sep 16, 2024
95698d3
Update packages/dashmate/src/doctor/verifySystemRequirementsFactory.js
shumkov Sep 16, 2024
b85dd05
Update packages/dashmate/src/commands/doctor/report.js
shumkov Sep 16, 2024
de92c2b
Update packages/dashmate/src/commands/doctor/report.js
shumkov Sep 16, 2024
57282c3
Update packages/dashmate/src/commands/doctor/report.js
shumkov Sep 16, 2024
6579774
Update packages/dashmate/src/doctor/analyse/analyseConfigFactory.js
shumkov Sep 16, 2024
274a713
Apply suggestions from code review
shumkov Sep 16, 2024
511ae0e
Update packages/dashmate/src/commands/doctor/index.js
shumkov Sep 17, 2024
8d3bfdb
Update packages/dashmate/src/commands/doctor/index.js
shumkov Sep 17, 2024
cbc3936
Update packages/dashmate/src/commands/doctor/report.js
shumkov Sep 17, 2024
ed447dc
test: fix out ˆdisk space assert
shumkov Sep 17, 2024
8abafc9
style: fix linter errors
shumkov Sep 17, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -94,4 +94,4 @@
"dependencies": {
"node-gyp": "^10.0.1"
}
}
}
73 changes: 50 additions & 23 deletions packages/dashmate/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ Distribution package for Dash node installation
- [Restart node](#restart-node)
- [Show node status](#show-node-status)
- [Execute Core CLI command](#execute-core-cli-command)
- [Doctor](#doctor)
- [Reset node data](#reset-node-data)
- [Full node](#full-node)
- [Node groups](#node-groups)
Expand Down Expand Up @@ -277,6 +278,55 @@ $ dashmate core cli "getblockcount"
1337
```

### Doctor

The `doctor` command analyzes the node configuration and state. As a result, it provides a list of potential problems ans solutions.
shumkov marked this conversation as resolved.
Show resolved Hide resolved

```
Dashmate node diagnostic. Bring your node to a doctor

USAGE
$ dashmate doctor [--config <value>] [-v] [-s <value>]

FLAGS
-s, --samples=<value> path to the samples archive
-v, --verbose use verbose mode for output
--config=<value> configuration name to use

DESCRIPTION
Dashmate node diagnostic. Bring your node to a doctor
shumkov marked this conversation as resolved.
Show resolved Hide resolved

COMMANDS
doctor report Dashmate node diagnostic report
```

The `doctor report` command collects all useful debugging info into a `.tar.gz` archive in your current working directory.

The archive will include:

- System information
- The node configuration
- Service logs, metrics and status

Collected data will not contain any private information which is already not available publicly.
All sensitive data like private keys or passwords is obfuscated.

```
Dashmate node diagnostic report

USAGE
$ dashmate doctor report [--config <value>] [-v]

FLAGS
-v, --verbose use verbose mode for output
--config=<value> configuration name to use

DESCRIPTION
Dashmate node diagnostic report

The command collect diagnostic information and create an obfuscated archive for further investigation
shumkov marked this conversation as resolved.
Show resolved Hide resolved
```

### Reset node data

The `reset` command removes all data corresponding to the specified config and allows you to start a node from scratch.
Expand Down Expand Up @@ -340,29 +390,6 @@ DESCRIPTION
Reindex Core data
```

### Full node
It is also possible to start a full node instead of a masternode. Modify the config setting as follows:
```bash
dashmate config set core.masternode.enable false
```
### Doctor

The `doctor` command collects all useful debugging info into a .tar archive in your current working directory.

Archive will contain all core and platform debugging data and logs for each running service.

```
USAGE
$ dashmate doctor [--config <value>] [-v]

FLAGS
-v, --verbose use verbose mode for output
--config=<value> configuration name to use

DESCRIPTION
Generate a report about masternode
```

### Full node
It is also possible to start a full node instead of a masternode. Modify the config setting as follows:
```bash
Expand Down
3 changes: 3 additions & 0 deletions packages/dashmate/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,9 @@
},
"wallet": {
"description": "Wallet related commands"
},
"doctor": {
"description": "Dashmate node diagnostic and report"
shumkov marked this conversation as resolved.
Show resolved Hide resolved
}
},
"topicSeparator": " "
Expand Down
281 changes: 0 additions & 281 deletions packages/dashmate/src/commands/doctor.js

This file was deleted.

Loading
Loading