I’ve made some significant updates in the past week, most notably greatly improving the Tx Activity level indication for all nodes in the Favorites Table (see notes for v0.56 below). This is a big step up in the app now achieving its original goal of showing detailed, thorough, and real-time (ie. within paat 1-2 minutes) status for all nodes. AllScan now provides a comprehensive dashboard for all your favorites. The Tx activity variable brightness color coding now makes it simple and intuitive to see not only what favorites were recently keyed but exactly what % of time each has been keyed in the past couple minutes.
v0.61 2023-01-24
Support ‘Favorites.ini Locations’ Cfgs setting. Optimizations to Favorites Add/Delete functions, support cases of blank or nonexistent files. Update Favs table sort function to use case-insensitive string sort option. Link Connection Status table node names to ASL stats page. Adjust Favs table highlight colors. Support old PHP versions (< 7.3.x) setcookie function w/SameSite parameter.
v0.56 2023-01-22
Optimizations to Keyed node status detection. ASL stats API data for many nodes shows a 0 stats.keyed value even when the node is in fact keyed. Testing revealed that stats.totalkeyups count and stats.totaltxtime are usually valid however and thus keyed status can be detected from changes in these values between stats requests. Implement moving average calculation of Tx activity level based on stats.keyed or total time keyed divided by elapsed time between the 2 most recent stats requests. The Favorites Table ‘#’ column for each node is now highlighted in a variable shade of red corresponding to the average Tx activity over the past few minutes.
If anyone can offer comment or suggestions to the following I would be grateful.
Pi3B± new flash- Latest beta- first run routine only- no updates/upgrades- nothing but stock ASL (too many issues trying to restore backups and running update/upgrade- nothing but problems)- ran Allscan install/update from github and get the following:
SQLite3 Class not found. Try running update script, update your OS and php-sqlite3 package,
and check that pdo_sqlite and sqlite3 extensions are enabled (uncommented) in php.ini.
Really do not want to update a thing- issues of one sort or another too much of a headache for me.
I have the full output from 1st step “cd ~” to the end if is of any use.
2 other issues-
1- also noticed on my working node stats are not updating - “ASL stats Network response timeout. Will retry in 15 Seconds…”
2- also- says invalid filesize- I run astdb from supermon and goes into retries. I enter the web address it references and the db appears intantly as text-
root@Pi-ASL-48654:/var/www/html/supermon# ./astdb.php
Retry 1 of 5. Will retry http://allmondb.allstarlink.org/
Where is one meant to get support for Allscan? Node info not populating- supermon astdb.txt is updated and complete- I’m confused where allscan pulls node info from I wish it just did everything in its own folder relying on other folder is really annoying.
Looking at this I see it is also looking at the “/var/log/asterisk/astdb.txt” file so not allmon2, not supermon, ugh- thx hope you can shed some light.
wwwroot=/var/www/html, asdir=allscan, subdir=, relpath=allscan
DB Tables: user, cfg
File system space free 92.5% (26.68/28.83 GB)
Node 52352 127.0.0.1:5038 read from …/supermon/allmon.ini
(More than one node is defined in …/supermon/allmon.ini, AllScan currently uses only the first.)
…/supermon/astdb.txt last updated 2024-07-01
/var/log/asterisk/astdb.txt last updated 2024-07-16
Reading /var/log/asterisk/astdb.txt…
116 Nodes in ASL DB
25 favorites read from favorites.ini
Connecting to Asterisk Manager 52352 127.0.0.1:5038…Login OK
CPU Temp: 145°F / 63°C @ 21:38 |
AllScan.info | Updates | AllStarLink.org | Keyed Nodes | ASL Foru
Your /var/log/asterisk/astdb.txt file looks corrupted (should contain thousands of nodes not 116; was probably truncated during download), just delete that file and you should be all set.
Ok thx. That fixed the node info in the favs in allscan but still does not make sense to me. Obviously allscan just chose to pull from either supermon or allmon2 dir bc there is no longer an /var/log/asterisk/astdb.txt file. So- why do we need that file or where is that file produced from? I just have an urge to simplify and understand so I can manage things well and know how they work so i can troubleshoot when needed. Seeing 3 different astdb.txt files in diff direcories is confusing. Maybe I will look at cron and see which astdb.php is being triggered which I am guessing is the one that produces the /var/log/asterisk/astdb.txt file.
At the time this was implemented it was simplest for AllScan to look in the most common places on a node where the astdb and other cfg files are kept. That has worked very well for the 1,000+ people now using it. Now that ASL3 is out, or some people are using Supermon2 instead of Allmon/Supermon there are more use cases but they are easy to accommodate and the github page talks about those in more detail. (Fortunately WA3WCO helped with a patch for ASL3 since it no longer was using astdb.txt.) Things may not be as simple as possible for every use case, but users have had surprisingly little trouble setting it up and using it. As this is free SW it is currently about #5 down on my list of priorities but I plan to make some enhancements in a couple months that will make it more bulletproof to possible issues such as you saw with a truncated astdb file or unusual node configurations.
Thanks for the info. I have it running on 3 ASL3 nodes but when things need looking after on older ASL2 node I built from scratch recently it became problematic to figure it out. Looking forward to your updates in the future thx and be well.
Latest allmon3 update seems to have broken allscan somehow- (update performed from ASL3 cockpit)
wwwroot=/var/www/html, asdir=allscan, subdir=, relpath=allscan
DB Tables: user, cfg
File system space free 78.8% (22.62/28.7 GB)
Error parsing /etc/allmon3/allmon3.ini
No valid [node#] and host definitions found. Check that you have AllMon2 or Supermon installed or
an allmon.ini.php file in /etc/asterisk/ containing a [YourNode#] line followed by host and passwd defines.
What is the output of the following?
ls -l /etc/allmon3/
cat /etc/allmon3/allmon3.ini |grep -v pass
And BTW as noted on the github page, “You can also place an allmon.ini file in AllScan’s web root folder, which will take precedence over other file locations.” You’d just need the following lines in the file:
From the Release Notes found on the AllScan web page :
v0.77 2024-07-01
Updates to support use of ASL3, and Allmon3 .ini file. If you do not have Allmon2 or Supermon installed, AllScan will now also check /etc/allmon3/allmon3.ini for the AMI credentials (note: may be necessary to execute “sudo chmod o+r /etc/allmon3/allmon3.ini” so the file is readable).
As I suggested a few posts above it’s probably better to make an allmon.ini file in the allscan web folder and thereby avoid any dependence on Allmon.
(BTW if a user accessing AMI is an issue the bigger question is why was that account created in the first place. Apache/www-data user should not be able to read .ini files. As AMI should accept commands only from localhost it probably doesn’t matter but better to exclude ini files in the Apache configs.)
As mentioned above I will be updating AllScan in the next ~month to reduce dependencies on other files/directories and allow the AMI details to be set during install and on the Cfgs page.
Thanks for the reply.
I put an allmon.ini as you suggested in the AS folder but no change across multiple reboots.
outputs-
root@ASL48654:/home/kk6qms# ls -l /etc/allmon3/
total 36
-rw-rw---- 1 allmon3 allmon3 2140 Jul 7 02:19 allmon3.ini
-rw-rw-r-- 1 allmon3 allmon3 2325 Aug 2 10:54 allmon3.ini.dpkg-dist
-rw-r–r-- 1 root root 1944 May 3 16:17 custom.css
-rw-r–r-- 1 root root 2092 May 3 16:17 menu.ini.example
-rw-r–r-- 1 root root 1050 May 3 16:17 nginx.conf
-rw-rw---- 1 allmon3 allmon3 314 May 3 16:17 user-restrictions
-rw-rw---- 1 allmon3 allmon3 98 Jul 7 03:16 users
-rw-r–r-- 1 root root 4393 Aug 2 10:54 web.ini
root@ASL48654:/home/kk6qms# cat /etc/allmon3/allmon3.ini |grep -v pass
;
; This is the master configuration file for all ASL/Asterisks node-related
; information. It is used for all server daemon processes
; (e.g. asl-statmon, asl-cmdlink) and the web interface/API.
;
; Each configuration item below is marked (R) or (O) for required or optional
; repsectively along with usage notes. The value in the table below is the
; default value for optiional items or examples for required items.
;
; [1999]
; host = 192.0.2.0 # (R) DNS name or IP address of the Asterisk/ASL node
;
; port = 5038 # (O) port of the Asterisk manager
;
; user = admin # (R) username of the Asterisk monitor, most
; # commonly ‘admin’
;
;
; multinodes = # (O) this node is a server hosting multiple nodes
; # and this is the “primary” record for the host.
;
; voters = n[,n,…] # (O) List voters on this server, comma
; # separate. No value disabled voters
;
; pollinterval = 1 # (O) polling interval to asterisk in seconds
; # default is 1. this value can be expressed as
; # a decimal fraction of a second - e.g., .5
; # is 500ms, .375 is 375ms, etc.
;
; vpollinterval = 1 # (O) broadcast interval of voter data in seconds
; # default is 1. this value can be expressed as
; # a decimal fraction of a second - e.g., .5
; # is 500ms, .375 is 375ms, etc.
;
; retryinterval = 15 # (O) seconds between retries if initial connection to
; # asterisk is lost (optional, default 15)
;
; retrycount = # (O) number of times to retry a lost asterisk
; # connection before ending (default infinite)
; For a basic installation, you chould be able to uncomment the below,
; set in asterisk/manager.conf
;[1999]
;host=127.0.0.1
;user=admin
[48654]
host=127.0.0.1
user=admin
root@ASL48654:/home/kk6qms#
Can you post the messages shown in the AllScan log window? Maybe the ini file in the AllScan web dir is missing something.
Alternatively, you can copy the allmon3.ini into the local dir and chgrp, ie:
sudo cp /etc/allmon3/allmon3.ini /var/www/html/allscan/
sudo chgrp www-data /var/www/html/allscan/allmon3.ini
The .ini file can also be put in /etc/asterisk/ instead of the AllScan web folder, which would have the advantages of it not being cleared when you later do an AllScan upgrade, and keeping the ini file out of web server accessible folders. So that might be a 3rd and better option:
sudo cp /etc/allmon3/allmon3.ini /etc/asterisk/
sudo chgrp www-data /etc/asterisk/allmon3.ini
I haven’t yet had a chance to test on ASL3 so thanks for your help in debugging this. Above assumes web server group is still www-data in ASL3, but they may have changed that too. If none of above work, LMK the following output:
ls -l /var/www/html/allscan/
cat /var/www/html/allscan/allmon.ini |grep -v pass
cat /var/www/html/allscan/allmon3.ini |grep -v pass
root@ASL48654:/home/kk6qms# cat /var/www/html/allscan/allmon.ini |grep -v pass
;
; This is the master configuration file for all ASL/Asterisks node-related
; information. It is used for all server daemon processes
; (e.g. asl-statmon, asl-cmdlink) and the web interface/API.
;
; Each configuration item below is marked (R) or (O) for required or optional
; repsectively along with usage notes. The value in the table below is the
; default value for optiional items or examples for required items.
;
; [1999]
; host = 192.0.2.0 # (R) DNS name or IP address of the Asterisk/ASL node
;
; port = 5038 # (O) port of the Asterisk manager
;
; user = admin # (R) username of the Asterisk monitor, most
; # commonly ‘admin’
;
;
; multinodes = # (O) this node is a server hosting multiple nodes
; # and this is the “primary” record for the host.
;
; voters = n[,n,…] # (O) List voters on this server, comma
; # separate. No value disabled voters
;
; pollinterval = 1 # (O) polling interval to asterisk in seconds
; # default is 1. this value can be expressed as
; # a decimal fraction of a second - e.g., .5
; # is 500ms, .375 is 375ms, etc.
;
; vpollinterval = 1 # (O) broadcast interval of voter data in seconds
; # default is 1. this value can be expressed as
; # a decimal fraction of a second - e.g., .5
; # is 500ms, .375 is 375ms, etc.
;
; retryinterval = 15 # (O) seconds between retries if initial connection to
; # asterisk is lost (optional, default 15)
;
; retrycount = # (O) number of times to retry a lost asterisk
; # connection before ending (default infinite)
; For a basic installation, you chould be able to uncomment the below,
; set in asterisk/manager.conf
;[1999]
;host=127.0.0.1
;user=admin
[48654]
host=127.0.0.1:5038
user=admin
root@ASL48654:/home/kk6qms#
root@ASL48654:/home/kk6qms# cat /var/www/html/allscan/allmon3.ini |grep -v pass
cat: /var/www/html/allscan/allmon3.ini: No such file or directory
root@ASL48654:/home/kk6qms#
FYI the search path order is currently as follows: ['allmon.ini', '../supermon/allmon.ini', '/etc/asterisk/allmon.ini.php', '../allmon2/allmon.ini.php', '/etc/allmon3/allmon3.ini']. Therefore an allmon.ini file in the AllScan web folder will take priority over other locations, and, if the file is in one of the other dirs it has to be named as shown. Thus to clarify my earlier suggestions:
If copying allmon3.ini to /etc/asterisk/, the file needs to be copied/renamed to allmon.ini.php. (cd /etc/asterisk/; sudo cp allmon3.ini allmon.ini.php)
If copying allmon3.ini to /var/www/html/allscan/, the file needs to be copied/renamed to allmon.ini. (cd /var/www/html/allscan/; sudo cp allmon3.ini allmon.ini)
If above does not help please post the log window messages.
Thanks for all the great commands David. I removed files from allscan and allmon 3 and renamed as instructed in etc/asterisk- rebooted- no luck. Added back to allmon3 bc that service was not starting.
wwwroot=/var/www/html, asdir=allscan, subdir=, relpath=allscan
DB Tables: user, cfg
File system space free 78.8% (22.62/28.7 GB)
Error parsing /etc/asterisk/allmon.ini.php
Error parsing /etc/allmon3/allmon3.ini
No valid [node#] and host definitions found. Check that you have AllMon2 or Supermon installed or
an allmon.ini.php file in /etc/asterisk/ containing a [YourNode#] line followed by host and passwd defines.
UPDATE: Clifford’s issue has been resolved in AllScan v0.78 now available on github.
v0.78 2024-08-11
Update install script for ASL3 to make a readable copy of the allmon3.ini file (outside of the web server root folder with 660 permissions) to ensure AMI credentials are available to AllScan. Note: Be sure you have Allmon3 fully working before installing/updating AllScan. This update is not needed for ASL2/HV nodes.