MM+RTTW Connecting N1MM logger to real-time logging
This project is not yet available for consumption... but it is mostly working
Requirements
N1MM+ latest, running with TRN files enabled.
GoodSync or FreeFileSync running on PC and correctly setup.
LAMP server (or similar) running PHP 4.3.11 and FTP/SFTP server.
FileZilla (or similar) FTP client for moving or working with files on server.
NOT supported: any ASP, .NET or IIS on the server side.
Risky: Windows server running PHP (many file handles and control sequences are different in PHP)
The system is written in PHP 7 and run on LinuxCloud server(s) with Apache/cPanel web server.
Getting started
Set up a new FTP user account on your server. You may do this through cPanel or other admin managers, or go ahead manually.
Give your user a good quota, >>10MB (~/etc/passwd line should end with :ftp,10 if manual)
Don't be tempted to use an existing account or root!
Make your new user have a home setting which points to the directory where your uploaded log will reside.
e.g. /usr/local/etc/httpd/htdocs/vp9kf/logs/mmrttw
In other words, your etc/passwd line should look something like this:
mmrttw:41aO7S5W2l2c2:3261:100:real time log:/usr/local/etc/httpd/htdocs/vp9kf/logs/mmrttw:ftp,10
where the path points to your domain area and sub-directory on the server.
Hint: On some servers you may
need to use vpasswd or passwd to reset the password again after account
creation (this is a bug in passwd file build). This is manifested by
the new user showing up at the end of the passwd file. After running
(v)passwd, you'll see it correctly in alphabetical order [except for
root and your primary account which will be on the first couple of
lines of the passwd file].
Log in using FileZilla and test the account by transferring any old
file up to the server. Check that it's in the location expected! You
should be able to see the directory/file also through your browser.
Caution:
The code is not written as a daemon. If for any reason your
installation should go rogue, you'll need to be logged in as root and
be able to use ps -ax (or whatever your command is for your flavour of *nix) and then be able to use kill or killall.
At this stage you should log in using SSH (probably through PuTTY) and
make sure you have process control over your server. Always a good
thing!
More:
Be sure you know your server and its behaviour. If in doubt, try
connecting using FTP and give it a damn good thrashing by sending lots
of files (setting up a CMS is a good test of reliability - several
thousand files will normally be moved!). MM+RTTW is designed to survive
link breakage, but it never hurts to know what sort of link you have.
The path to your N1MM+ directory in Windows 10 should be something like:
C:/Users/<yourlogin>/Documents/N1MM Logger+/Databases/TransactionLogFiles/
We'll be looking for .TRN files that are generated by N1MM Logger+ as it progresses with stations worked.
---
More, more, more.... include phpinfo testing, etc.....
OK.
You now think that it works. Keep testing by entering callsigns into
your test log. You should see the GoodSync icon in the task bar
rotating as each update is sent by the PC. Run Firefox with RetryEvery installed and set to 30 seconds or Chrome with Auto-Reload set the same. You might also want to log in as root and run top
and keep an eye on the server load. Keep testing and make sure that
your server is doing as it should. You'll typically see 8 httpd
processes running and child processes should be spawned each time you
hit your site with a request.
Auto-refresh of your log page for other users is achieved by code embedded in the <head> section of the HTML, e.g.
<meta http-equiv="REFRESH" content="60">
<meta http-equiv="Pragma" content="no-cache">
Your server should easily be able to cope with a 60s setting. This
allows the pack to watch your operation by Cluster, RBN, DXWatch and
your log as you work them. My best sustained rate on CW has been 304
per hour for 2 hours. That's about 5 per minute, so we know we should
be displaying about the last 15 or so QSOs for them to have a chance of
seeing themselves in the log, without having to resort to a log search.
FAQ
Q: Why do you record seconds in the logfile?
A: Because they're available - logs would be smaller without, but it
also keeps a record of how long the data retrieval and processing took.
Q: When was the first release of the code?
A: 1st July 2011.
Q: How can I use the logged data?
A: There are no limitations on the data gathered, you may use it for plots.
Q: Are you looking for help?
A: Yes, if anybody has new ideas or improvements, they should contact me.
(Not yet) Released
under GPLv3 Licence.