What's new
  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

uiScribe uiScribe v1.4.9 [2025-Nov-07] - Custom System Log WebUI page for Scribe (syslog-ng) logs

Martinski

Very Senior Member
Release Notes for uiScribe v1.4.7 production version now available
[2025-Jul-05]


1) FIXED: Errors when loading the WebUI page on the 3006.102.x F/W version.

2) FIXED: Issue with "missing scrollbar" on browser windows when the WebUI page was loaded on the 3004.386.14.* F/W version.

3) IMPROVED: Modified code to set the corresponding priority level of log entries when calling the built-in logger utility.

4) IMPROVED: Modified code so that every time the SSH CLI menu is run, it checks if the WebUI page has already been mounted. If not found mounted, the script will run the code to remount the WebUI.

5) IMPROVED: Modified the startup call made in the 'post-mount' script to check if the USB-attached disk partition passed as an argument has indeed Entware installed.

6) IMPROVED: Added "export PATH" statement to give the built-in binaries higher priority than the equivalent Entware binaries.

7) Miscellaneous code improvements.


The fork from @Jack Yaz's uiScribe add-on is now hosted on the AMTM-OSR GitHub repo:


*NOTE*: uiScribe requires installation of Scribe v3.2.2 (or later) version:
 
Last edited:
Release Notes for uiScribe v1.4.8 production version now available
[2025-Aug-24]


1) Miscellaneous code improvements and clear messaging.



NOTE:
The fork from @Jack Yaz's uiScribe add-on is now hosted on the AMTM-OSR GitHub repo:
 
Last edited:
Release Notes for uiScribe v1.4.9 production version now available
[2025-Nov-07]


1) Removed old Tomato JavaScript file references.
2) Miscellaneous code improvements.




The fork from @Jack Yaz's uiScribe add-on is now hosted on the AMTM-OSR GitHub repo:
 
Release Notes for uiScribe v1.4.10 BETA development version now available
[2025-Nov-30]


1) NEW: Added "Rotate All" and "Rotate Log" buttons on the WebUI page.
This new feature initiates a logrotate command for each log file and will follow the log rotation policies and directives currently specified in the corresponding logrotate configuration file.​

For example, if the log file '/opt/var/log/WXYZ.log' has a logrotate configuration file '/opt/etc/logrotate.d/WXYZ' that sets a weekly rotation and a size of 2MB, but the current file size is only 200KB, and the last rotation occurred 3 days ago, the logfile will *not* be rotated because it doesn't meet the rotation schedule and size policies.​

2) NEW: Added "Clear All" and "Clear Log" buttons on the WebUI page.
This new feature will forcibly rotate each log file on demand, regardless of the rotation policies and directives found in the corresponding logrotate configuration file. This means the current log file will be rotated and replaced with a fresh instance, ignoring any rotation schedule and size limits.​

3) NEW: Added file size information on each log file tab.
This new feature displays the current size of the log file obtained when loading the webpage and will be updated periodically with the latest size information every 3 minutes.​

IMPORTANT NOTES:
1) Installation of the latest Scribe v3.2.6_25113020 (or later) BETA development version is also required so that uiScribe calls to logrotate can work properly.

2) When clearing a log file from the WebGUI page, the actual log file is *not* deleted from the filesystem; it's just rotated and compressed (gzip by default) using the logrotate mechanism. This means that the log file is still left on the USB-attached drive, and users can still review its contents for possible analysis and troubleshooting purposes. If a user wants to remove the file, it must be done manually, or they can wait until the log rotation mechanism removes the file based on the maximum number of rotation cycles (when old files get automatically deleted). Log files that have been "cleared" via the WebUI page are renamed with a date/time stamp (e.g. syslog-ng.log-20251130193650.gz) so they can be easily sorted and found.

To switch from the currently installed production release to the latest BETA development version, use the following command on an SSH terminal window:
Bash:
/jffs/scripts/uiScribe develop

Sample screenshots:

uiScribe_v1.4.10_WebUI_Rotate&ClearLogs.jpg


uiScribe_v1.4.10_WebUI_EmptyLogs.jpg


uiScribe_v1.4.10_DevelopHelp.jpg
 
Last edited:
It's a very good idea but IMHO these buttons are an overkill for the GUI.
How about small icons on the right side of the log's title bar?
They can be visible and functional even if the corresponding log is collapsed...

log_actions.jpg
 
Release Notes for uiScribe v1.4.10_25120720 BETA-2 development version now available
[2025-Dec-07]


1) IMPROVED: The calls to logrotate made by clicking on the "Rotate All" button will target all filtered log files, including the ones for which no individual logrotate configuration file is found.
This follows the change made in the latest Scribe BETA-2 version, where users don't need to add a specific logrotate configuration file for each filtered log file unless they want to override the default global directives set in the new "/opt/etc/logrotate.d/A01global" configuration file.​

2) IMPROVED: Added a mutually exclusive lock for all calls to logrotate made from Scribe and uiScribe to prevent a possible case where simultaneous executions will attempt to rotate the same set of log files.

IMPORTANT NOTE:
- Installation of the latest Scribe BETA-2 v3.2.6_25120600 version (or later) is required so that all calls to logrotate from Scribe and uiScribe can be coordinated and managed properly.

To get the latest BETA-2 v1.4.10_25120720 version of uiScribe, run the following commands:
Bash:
/jffs/scripts/uiScribe develop
/jffs/scripts/uiScribe forceupdate

uiScribe_v1.4.10_DevelopHelp.jpg
 
where users don't need to add a specific logrotate configuration file for each filtered log file unless they want to override the default global directives set in the new "/opt/etc/logrotate.d/A01global" configuration file
Nifty. This fixes the hole I noted. I wonder--perhaps you've tested this--if the syslog-ng reload will still only be done once, even if it is in an individual logfile? I think that is what the sharedscripts entry does. Maybe we can delete it from all the individual configs. As I noted above, my suspicion is that now no one really needs individual logrotate configs.
 
Nifty. This fixes the hole I noted. I wonder--perhaps you've tested this--if the syslog-ng reload will still only be done once, even if it is in an individual logfile? I think that is what the sharedscripts entry does. Maybe we can delete it from all the individual configs. As I noted above, my suspicion is that now no one really needs individual logrotate configs.

I have done some limited testing on that specific area with the latest changes, and I'm still figuring things out while observing how the "postrotate/endscript" option actually works given different configurations. There's just not enough free time in my day that I can set aside to focus on this... ;)
 
Well, in the limited free time you devote to this, with my gratitude, this is significant progress. I think you can tell right off if you look at the syslog-ng logging statements. There should be one, and only one, statement each time logrotate is invoked that says, "configuration reloaded'. In the existing structure (without the A01 statement), even though there are hangups in each configuration file, that is true. I suspect, if A01 is in the mix, that this is also true, in which case the separate hangups can be deleted.
 

Similar threads

Latest threads

Support SNBForums w/ Amazon

If you'd like to support SNBForums, just use this link and buy anything on Amazon. Thanks!

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!

Members online

Back
Top