Skip to content

Commit 1900748

Browse files
authored
Merge pull request alexjustesen#104 from svenvg93/main
chore: update error messages and support guides
2 parents 92a231c + 2cec359 commit 1900748

File tree

5 files changed

+147
-29
lines changed

5 files changed

+147
-29
lines changed

features.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@ description: A full list of implemented features and those that are planned.
44

55
# Features
66

7-
<table><thead><tr><th width="563">Features</th><th align="right">Status</th></tr></thead><tbody><tr><td><strong>Install options</strong></td><td align="right"></td></tr><tr><td>Docker images for x86</td><td align="right">Done</td></tr><tr><td>Docker images for arm64</td><td align="right">Done</td></tr><tr><td>unRAID Community App</td><td align="right">Done</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Dashboard</strong></td><td align="right"></td></tr><tr><td>Show the most recent results</td><td align="right">Done</td></tr><tr><td>Pretty graphs</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/pull/213">Done</a></td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Results</strong></td><td align="right"></td></tr><tr><td>History of failed and successful results</td><td align="right">Done</td></tr><tr><td>Filter by <code>scheduled</code> and <code>successful</code></td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/pull/318">Done</a></td></tr><tr><td>Export selected results to CSV</td><td align="right">Done</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Speedtest options</strong></td><td align="right"></td></tr><tr><td>Scheduled tests</td><td align="right">Done</td></tr><tr><td>Adhoc test</td><td align="right">Done</td></tr><tr><td>Manually specify a server</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/pull/216">Done</a></td></tr><tr><td>Manually specify a list of servers</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/pull/216">Done</a></td></tr><tr><td>Threshold alerts</td><td align="right">Done</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Ping options</strong></td><td align="right"></td></tr><tr><td>Ping a domain or list of domains</td><td align="right">Planned</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Database support</strong></td><td align="right"></td></tr><tr><td>SQLite (default)</td><td align="right">Done</td></tr><tr><td>MariaDB / MySQL</td><td align="right">Done</td></tr><tr><td>Postgresql</td><td align="right">Done</td></tr><tr><td>InfluxDB v2</td><td align="right">Done</td></tr><tr><td>Prometheus</td><td align="right">Planned</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Notification Channels</strong></td><td align="right"></td></tr><tr><td>In-app</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/releases/tag/v0.1.0">Done</a></td></tr><tr><td>Mail</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/releases/tag/v0.4.0">Done</a></td></tr><tr><td>Discord</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/pull/1196">Done</a></td></tr><tr><td>Gotify</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/pull/1561">Done</a></td></tr><tr><td>Slack</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/pull/1522">Done</a></td></tr><tr><td>Telegram</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/pull/265">Done</a></td></tr><tr><td>Webhooks</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/releases/tag/v0.15.0">Done</a></td></tr><tr><td>Ntfy</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/pull/1579">Done</a></td></tr><tr><td>Pushover</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/pull/1574">Done</a></td></tr><tr><td>HealthCheck.io</td><td align="right"><a href="https://github.com/alexjustesen/speedtest-tracker/pull/1567">Done</a></td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Application Monitoring</strong></td><td align="right"></td></tr><tr><td><a href="https://ohdear.app/">https://ohdear.app/</a></td><td align="right">Planned</td></tr><tr><td><a href="https://thenping.me/">https://thenping.me/</a></td><td align="right">Planned</td></tr><tr><td><a href="https://healthchecks.io/">https://healthchecks.io/</a></td><td align="right">Planned</td></tr></tbody></table>
7+
<table><thead><tr><th width="563">Features</th><th align="right">Status</th></tr></thead><tbody><tr><td><strong>Install options</strong></td><td align="right"></td></tr><tr><td>Docker images for x86</td><td align="right">Done</td></tr><tr><td>Docker images for arm64</td><td align="right">Done</td></tr><tr><td>unRAID Community App</td><td align="right">Done</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Dashboard</strong></td><td align="right"></td></tr><tr><td>Show the most recent results</td><td align="right">Done</td></tr><tr><td>Pretty graphs</td><td align="right">Done</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Results</strong></td><td align="right"></td></tr><tr><td>History of failed and successful results</td><td align="right">Done</td></tr><tr><td>Filter by <code>scheduled</code> and <code>successful</code></td><td align="right">Done</td></tr><tr><td>Export selected results to CSV</td><td align="right">Done</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Speedtest options</strong></td><td align="right"></td></tr><tr><td>Scheduled tests</td><td align="right">Done</td></tr><tr><td>Adhoc test</td><td align="right">Done</td></tr><tr><td>Manually specify a server</td><td align="right">Done</td></tr><tr><td>Manually specify a list of servers</td><td align="right">Done</td></tr><tr><td>Threshold alerts</td><td align="right">Done</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Ping options</strong></td><td align="right"></td></tr><tr><td>Ping a domain or list of domains</td><td align="right">Planned</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Database support</strong></td><td align="right"></td></tr><tr><td>SQLite (default)</td><td align="right">Done</td></tr><tr><td>MariaDB / MySQL</td><td align="right">Done</td></tr><tr><td>Postgresql</td><td align="right">Done</td></tr><tr><td>InfluxDB v2</td><td align="right">Done</td></tr><tr><td>Prometheus</td><td align="right">Done</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Notification Channels</strong></td><td align="right"></td></tr><tr><td>In-app</td><td align="right">Done</td></tr><tr><td>Mail</td><td align="right">Done</td></tr><tr><td>Webhooks</td><td align="right">Done</td></tr><tr><td>Apprise</td><td align="right">Done</td></tr><tr><td></td><td align="right"></td></tr><tr><td><strong>Application Monitoring</strong></td><td align="right"></td></tr><tr><td><a href="https://ohdear.app/">https://ohdear.app/</a></td><td align="right">Planned</td></tr><tr><td><a href="https://thenping.me/">https://thenping.me/</a></td><td align="right">Planned</td></tr><tr><td><a href="https://healthchecks.io/">https://healthchecks.io/</a></td><td align="right">Planned</td></tr></tbody></table>

getting-started/installation/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
Speedtest Tracker is containerized so you can run it anywhere you run your containers. The image is built by LinuxServer.io, build information can be found [here](https://fleet.linuxserver.io/image?name=linuxserver/speedtest-tracker).
44

5+
{% hint style="danger" %}
6+
Only the installation methods listed below are supported. Any other installation methods, such as bare metal setups or Proxmox LXCs, are **not supported** by this project.
7+
{% endhint %}
8+
59
Use the install guides listed below to install Speedtest Tracker:
610

711
### Docker

help/error-messages.md

Lines changed: 128 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,84 @@
11
# Error Messages
22

3-
### Speedtest errors
3+
### Troubleshooting
4+
5+
For all below errors there will be more information provided in the container logs. You can check the logs for more details by checking the container logs by running;
6+
7+
`docker logs speedtest-tracker`&#x20;
8+
9+
or any other equivalent command for your setup.&#x20;
10+
11+
<details>
12+
13+
<summary>Enable Debugging</summary>
14+
15+
By default `APP_DEBUG` is set to `false` in production to prevent verbose error outputs. To debug the issue follow the steps below.
16+
17+
1. Set `APP_DEBUG=true` as a environment variable
18+
2. Restart the container
19+
3. Reproduce the error by visiting the page or performing the action that caused the error
20+
4. View the output in the UI or in the logs to help resolve the issue, if you can not resolve it open an issue in the [GitHub](https://github.com/alexjustesen/speedtest-tracker/issues) repository
21+
5. In the output the line that starts with `[timestamp] production.ERROR:` is the error the server ran into
22+
6. Once the issue is resolved you can remove the `APP_DEBUG` environment variable
23+
24+
</details>
25+
26+
### Application
27+
28+
<details>
29+
30+
<summary>I'm getting a <code>500 | SERVER ERROR</code> error</summary>
31+
32+
The `500 | SERVER ERROR` is caused by either a bug or a misconfiguration. You must e[nable debugging](error-messages.md#enable-debugging) to determine the exact cause of the error.
33+
34+
</details>
35+
36+
<details>
37+
38+
<summary>Unsupported cipher or incorrect key length. Supported ciphers are: <code>aes-128-cbc</code>, <code>aes-256-cbc</code>, <code>aes-128-gcm,</code> <code>aes-256-gcm</code>.</summary>
39+
40+
This error is shown when the `APP_KEY` is not set or not set correctly. Make suer you set the `APP_KEY` as described in the [installation steps](../getting-started/installation/using-docker-compose.md#install-with-docker-compose).
41+
42+
</details>
43+
44+
### Speedtest Process
45+
46+
<details>
47+
48+
<summary>Failed to connected to hostname</summary>
49+
50+
When a speedtest is being [processed](../other/speedtest-process.md) Speedtest Tracker will make a ICMP ping to [icanhazip.com](http://icanhazip.com) to check if there is an internet connection before starting the Speedtest
51+
52+
**Possible reasons**:
53+
54+
* There is a docker network problem or no internet connection.
55+
* Some DNS blocks lists will block this domain, if you're getting errors and your server has access to the internet you'll need to add this to your allow lists.
56+
* _Most_ Docker setups can send ICMP requests without needed elevated privileges on the host or in the container. That being said if your Docker user doesn't run with elevated permissions or doesn't belong to the Docker group you can get a failure on this step. To allow the user to send ICMP requests you need to add the permission to the container.
57+
58+
**Configuration options**
59+
60+
* Use available [Environment Variables](../getting-started/environment-variables.md#speed-tests) to change the endpoint to your liking
61+
62+
</details>
463

564
<details>
665

7-
<summary>Tests are saying there is no internet while there is.</summary>
66+
<summary>Failed to fetch external IP address</summary>
67+
68+
When the `SPEEDTEST_SKIP_IPS` environment variable is Speedtest Tracker will make a call to [http://icanhazip.com](http://icanhazip.com/) to get your external IP address. This is done check if your external IP address (WAN IP) should be skipped.
69+
70+
**Possible reasons**:
871

9-
When a speedtest is being processed Speedtest Tracker will make a call to [http://icanhazip.com](http://icanhazip.com) to get your external IP address. This is done to determine if your server has access to the internet and to check if your external IP address (WAN IP) should be skipped.
72+
* There is a docker network problem or no internet connection.
73+
* Some DNS blocks lists will block this domain, if you're getting errors and your server has access to the internet you'll need to add this to your allow lists.
1074

11-
Some DNS blocks lists will block this domain, if you're getting errors and your server has access to the internet you'll need to add this to your allow lists.
75+
**Configuration options**
76+
77+
* Use available [Environment Variables](../getting-started/environment-variables.md#speed-tests) to change the endpoint to your liking. :warning: Whatever service you choose needs to only return an IP address in the body of the response for this to work.
1278

1379
</details>
1480

15-
### Ookla errors
81+
### Ookla Related
1682

1783
<details>
1884

@@ -37,3 +103,60 @@ This usually means the defined server is no longer available. Remove it from you
37103
Not 100% sure what causes this exception yet but it's likely when the CLI can't locate a local server. You should specify a list of servers to see if that addresses the issue.
38104

39105
</details>
106+
107+
<details>
108+
109+
<summary>Unable to retrieve Ookla servers, check internet connection and see logs.</summary>
110+
111+
This errors is shown when we try to retrieve the Ookla server list when selecting an server wehn running an manual speedtest. We get the list from: [https://www.speedtest.net/api/js/servers](https://www.speedtest.net/api/js/servers).&#x20;
112+
113+
This error is useually caused by a docker network problem or no internet connection. You can check the [container logs](error-messages.md#troubleshooting) for more details.&#x20;
114+
115+
</details>
116+
117+
### InfluxDB
118+
119+
<details>
120+
121+
<summary>Failed to bulk write to InfluxDB</summary>
122+
123+
When Speedtest Tracker fails to write data to InfluxDB this error is shown. The [container logs](error-messages.md#troubleshooting) will show more details on why it failed.&#x20;
124+
125+
**Possible reasons:**
126+
127+
* Connectivity problem to InfluxDB
128+
* Problem with authentication
129+
* Specified bucket does not exist in InfluxDB
130+
131+
</details>
132+
133+
<details>
134+
135+
<summary>Failed to write test data to InfluxDB.</summary>
136+
137+
When Speedtest Tracker fails to write data to InfluxDB this error is shown. The [container logs](error-messages.md#troubleshooting) will show more details on why it failed.&#x20;
138+
139+
**Possible reasons:**
140+
141+
* Connectivity problem to influxdb
142+
* Problem with authentication
143+
* Specified bucket does not exist in InfluxDB
144+
145+
</details>
146+
147+
<details>
148+
149+
<summary>Failed to write to InfluxDB.</summary>
150+
151+
When Speedtest Tracker fails to write data to InfluxDB this error is shown. The [container logs](error-messages.md#troubleshooting) will show more details on why it failed.&#x20;
152+
153+
**Possible reasons:**
154+
155+
* Connectivity problem to influxdb
156+
* Problem with authentication
157+
* Specified bucket does not exist in InfluxDB
158+
159+
</details>
160+
161+
162+

help/faqs.md

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,14 @@ You need a `APP_KEY` for the encryption. See the [installation docs](../getting-
2525

2626
</details>
2727

28+
<details>
29+
30+
<summary>I'm getting duplicate message via Apprise</summary>
31+
32+
By default when sending an notifications via Apprise we wait up to 30 seconds for Apprise to respond back with any message. Incase this 30 seconds is exceeded, we will retry 3 times. In case of any very slow Apprise processing this might cause duplicated notifications. Please check the [logs](error-messages.md#troubleshooting) to see the the timeout happend
33+
34+
</details>
35+
2836
### Time zones
2937

3038
<details>
@@ -55,20 +63,3 @@ Once set restart the container.
5563
Starting your cron schedule at an off-peak minute can help reduce network congestion or avoid overloading a speed test server. This [comment](https://github.com/alexjustesen/speedtest-tracker/issues/552#issuecomment-2028532010) on this issue can help you get the formatting right.
5664

5765
</details>
58-
59-
### Other
60-
61-
<details>
62-
63-
<summary>I'm getting a <code>500 | SERVER ERROR</code> error</summary>
64-
65-
By default `APP_DEBUG` is set to `false` in production to prevent verbose error outputs. To debug the issue follow the steps below.
66-
67-
1. Set `APP_DEBUG=true` as a environment variable
68-
2. Restart the container
69-
3. Reproduce the error by visiting the page or performing the action that caused the error
70-
4. View the output in the UI or in the logs to help resolve the issue, if you can not resolve it open an issue in the [GitHub](https://github.com/alexjustesen/speedtest-tracker/issues) repository
71-
5. In the output the line that starts with `[timestamp] production.ERROR:` is the error the server ran into
72-
6. Once the issue is resolved you can remove the `APP_DEBUG` environment variable
73-
74-
</details>

settings/notifications/apprise.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,25 +8,25 @@ Apprise allows the application to sent notifications to a wide variety of servic
88

99
### Apprise Server
1010

11-
To use Apprise, you’ll need to set up your own Apprise instance. This container isn’t created automatically, so make sure to include it in your deployment. See the Apprise [Github Repo](https://github.com/caronc/apprise-api) for the setup instructions. On the notification page you will need to define the location of your Apprise instance. Make sure this instance is reachable for the Speedtest Tracker.
12-
1311
{% hint style="info" %}
14-
We don't offer support on setting up Apprise, incase of any problems with the Apprise Container please reach out to the Apprise team.&#x20;
12+
We don't offer support on setting up Apprise, incase of any problems with the Apprise Container please reach out to the Apprise team.
1513
{% endhint %}
1614

15+
To use Apprise, you’ll need to set up your own Apprise instance. This container isn’t created automatically, so make sure to include it in your deployment. See the Apprise [Github Repo](https://github.com/caronc/apprise-api) for the setup instructions. On the notification page you will need to define the location of your Apprise instance. Make sure this instance is reachable for the Speedtest Tracker.
16+
1717
### Notification Channels
1818

19-
Notification channels are the formatted URLs used by Apprise to send notifications to various services. Refer to the [Apprise documentation](https://github.com/caronc/apprise?tab=readme-ov-file#supported-notifications) for a full list of supported channels and their required formats. You can add as many different channels as you wish. The notifications will be sent to all of them.&#x20;
19+
Notification channels are the formatted URLs used by Apprise to send notifications to various services. Refer to the [Apprise documentation](https://github.com/caronc/apprise?tab=readme-ov-file#supported-notifications) for a full list of supported channels and their required formats. You can add as many different channels as you wish. The notifications will be sent to all of them.
2020

2121
### Tips and Tricks
2222

2323
#### Format
2424

25-
By default the format used for message is `markdown` This allows us to do some formatting on the message like bold text etc.
25+
By default the format used for message is `markdown` This allows us to do some formatting on the message like bold text etc.
2626

2727
#### Preview Images
2828

29-
By default Apprise does not allow preview images for URLs. This is an default setting on the Apprise instance. Depending on the service used you can override this settings in the notification channel URL. Check the Apprise documentation to see if your service support this and how to set it.&#x20;
29+
By default Apprise does not allow preview images for URLs. This is an default setting on the Apprise instance. Depending on the service used you can override this settings in the notification channel URL. Check the Apprise documentation to see if your service support this and how to set it.
3030

3131
### Triggers
3232

0 commit comments

Comments
 (0)