You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+19-21Lines changed: 19 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,13 @@
1
1
# PANIC Monitoring and Alerting for Blockchains
2
2
3
-
**DISCLAIMERS**:
4
-
- Don't allow public access to PANIC UI as it might contain sensitive information about your infrastructure. UI authentication is still to be developed.
3
+
**DISCLAIMER**: Don't allow public access to PANIC UI as it might contain sensitive information about your infrastructure. UI authentication is still to be developed.
5
4
6
5

7
6
8
7
PANIC is an open source monitoring and alerting solution for Cosmos-SDK,
9
8
Substrate and Chainlink based nodes by [Simply VC](https://simply-vc.com.mt/).
10
-
The tool was built with user friendliness in mind, and comes with numerous
11
-
features such as phone calls for critical alerts, a UI Dashboard, a Web-UI
9
+
The tool was built with user friendliness in mind and comes with numerous
10
+
features, such as phone calls for critical alerts, a UI Dashboard, a Web based
12
11
installation process and Telegram/Slack commands for increased control over your
Now that you're inside the PANIC directory, open up the .env file and change the `INSTALLER_USERNAME` and `INSTALLER_PASSWORD` fields to your preferred but secure choice. This is to ensure that when configuring PANIC through the web-installer no one else can access it. Moreover, the `UI_ACCESS_IP` field must also be changed to the IP of where PANIC UI is going to be hosted (can be set to `localhost` if running locally). This is to ensure that the API is only accessible from the UI. Helper scripts which can be used to get the IP address (`scripts/get_ip_linux.sh` and `scripts/get_ip_mac.sh`) are available but please note that these are not guaranteed to work on all servers/machines.
84
+
Now that you're inside the PANIC directory, open up the .env file and change the `UI_ACCESS_IP` field to the IP of where PANIC UI is going to be hosted (can be set to `localhost` if running locally). This is to ensure that the API (PANIC UI Backend) is only accessible from the UI. Helper scripts which can be used to get the IP address (`scripts/get_ip_linux.sh` and `scripts/get_ip_mac.sh`) are available but please note that these are not guaranteed to work on all servers/machines.
86
85
87
86
```bash
88
87
# This will access the .env file on your terminal
89
88
nano .env
90
89
```
91
90
92
-
Once inside change `UI_ACCESS_IP`, `INSTALLER_USERNAME` and `INSTALLER_PASSWORD` accordingly. Here is an example:
91
+
Once inside change `UI_ACCESS_IP` accordingly. Here is an example:
93
92
94
93
```ini
95
94
UI_ACCESS_IP=1.1.1.1
96
-
INSTALLER_USERNAME=panic_operator
97
-
INSTALLER_PASSWORD=wowthisisasecurepassword
98
95
```
99
96
100
97
Then to exit hit the following keys:
@@ -118,13 +115,13 @@ docker system prune -a --volumes
118
115
docker-compose up -d --build
119
116
```
120
117
121
-
Now you will have to configure PANIC to monitor your nodes and systems as well as give it the channels to alert you through. To do this you will have to navigate to the running web-installer. This can be found at `https://{UI_ACCESS_IP}:8000`, or at `https://localhost:8000` if you're running it locally. The installer will first ask you to enter the username and password. These are `INSTALLER_USERNAME` and `INSTALLER_PASSWORD` which you have changed previously. Make sure you type **HTTPS** if you're getting an error when accessing the installer on your browser.
118
+
The next step is to configure PANIC to monitor your nodes and systems as well as give it the channels to alert you through. You can do this by navigating to the PANIC UI at `https://{UI_ACCESS_IP}:3333`, or at `https://localhost:3333` if you're running it locally. The PANIC UI will start the installation procedure if it does not detect any configurations. Make sure you type **HTTPS** if you're getting an error when accessing PANIC UI on your browser.
122
119
123
-
After you set-up PANIC to your liking, the Web-Installer will save these details in the form of configuration files inside the `config` folder. For correct behavior, these configuration files should never be modified. If you would like to edit them at some point, we suggest to re-run the web-installer again. The web-installer will ask you if you want to start a fresh install or load your old configuration.
120
+
After you set-up PANIC to your liking the installation procedure will save these details in the Mongo database. For correct behavior the database should never be modified manually. If you would like to edit the configurations at some pointyou can do so by accessing the settings option on the PANIC UI header.
124
121
125
-
PANIC will automatically read these configuration files and begin monitoring the data sources. To check that this is the case we suggest running the command `docker-compose logs -f alerter` and `docker-compose logs -f health-checker`. By this you can see the different components starting up. If you have set-up telegram/slack commands we suggest that you enter the command `/status` to check that all PANIC components are running. If you really want to check that PANIC is up and running, we suggest that you check that all the logs inside `panic/alerter/logs` have no errors.
122
+
PANIC will automatically read these configuration files and begin monitoring the data sources. To confirm that PANIC is running as expected we suggest running the command `docker-compose logs -f alerter` and `docker-compose logs -f health-checker`. By this you can see the different components starting up. If you have set-up telegram/slack commands we suggest that you enter the command `/status`(telegram) or `/panicstatus` (slack) to check that all PANIC components are running. If you want to check that every PANIC component is up and running without any issue we suggest that you check that all the logs inside `panic/alerter/logs` have no errors.
126
123
127
-
You can visualise node metrics and alerts using PANIC UI, which can be accessed at `https://{UI_ACCESS_IP}:3333`, or at `https://localhost:3333` if you're running it locally.
124
+
After PANIC is up and running you can visualise node metrics and alerts using PANIC UI at `https://{UI_ACCESS_IP}:3333`, or at `https://localhost:3333` if you're running it locally.
128
125
For more information regarding PANIC UI, [click here](./ui/README.md).
129
126
130
127
Congratulations you should have PANIC up and running!
@@ -277,17 +274,11 @@ If you wish to explore more advanced features, PANIC also supports configurable
277
274
3. The rest can be configured to your preferences.
278
275
4. Click `Add Service`
279
276
2. You will be taken to a new page, where you need to navigate to the `Integrations` tab and take note of the (i)`Integration Key`.
280
-
- Secondly the API Token
281
-
1. Navigate to `https:/{YOUR_SUBDOMAIN}.pagerduty.com/api_keys`.
282
-
2. Click `Create New API Key`
283
-
3. Give it a description (This can be anything you want)
284
-
4. Click `Create Key` and take note of (ii)`API Key` value.
285
277
286
278
**At the end, you should have:**
287
279
1. The Integration Key
288
-
2. The API token
289
280
290
-
These will be used later in the Web-Installer to be saved in the configuration files.
281
+
This will be used later on in the installation procedure.
291
282
292
283
**Note** You can also install an app for Android / iPhone as well as setup your phone number to receive alerts.
293
284
@@ -306,15 +297,15 @@ These will be used later in the Web-Installer to be saved in the configuration f
306
297
**At the end, you should have:**
307
298
1. The API token
308
299
309
-
These will be used later in the Web-Installer to be saved in the configuration files.
300
+
This will be used later on in the installation procedure.
310
301
311
302
**Note** You can also install the Opsgenie app for Android / iPhone as well as setup your phone number to receive calls.
312
303
313
304
[Back to Requirements](#requirements)
314
305
315
306
### Replacing SSL certificates (recommended)
316
307
317
-
Apply your own SSL certificate signed by a certificate authority. The SSL certificate (cert.pem) and the key (key.pem) should be placed in the `panic/certificates` folder, and they should replace the existing dummy files. Note that these dummy files were given just for convenience as the Installer server won't start without them, however, for maximum security these must be replaced.
308
+
Apply your own SSL certificate signed by a certificate authority. The SSL certificate (cert.pem) and the key (key.pem) should be placed in the `panic/certificates` folder, and they should replace the existing dummy files. Note that these dummy files were given just for convenience as the API (PANIC UI Backend) server won't start without them, however, for maximum security these must be replaced.
318
309
319
310
We suggest reading [this](https://nodejs.org/en/knowledge/HTTP/servers/how-to-create-a-HTTPS-server/) for more details on SSL certificates, and how to generate a self signed certificate in case you do not want to obtain a certificate signed by a certificate authority. However, for maximum security, the self signed certificate option is not recommended.
0 commit comments