Ripshod
Very Senior Member
Long term test? I'm up for that challenge.For me it took months for this error to show up. If you are willing to ride it out that long, then maybe the issue could be resolved.
Long term test? I'm up for that challenge.For me it took months for this error to show up. If you are willing to ride it out that long, then maybe the issue could be resolved.
Okay, so this issue with scribe completely borked skynet. skynet would not start at all, syslog-ng kept getting "killed" whenever I restarted skynet to try to get it working. I have also ran into issues where scribe (syslog-ng) prevented adguardhome from starting as well. I am wondering if syslog-ng is downloading a new default config or if something is happening behind the scenes with it that is not being accounted for by scribe.Long term test? I'm up for that challenge.
I think that is because the file is managed by skynet. it is truncated. --- I may be wrong, but this is my understanding behind that.skynet-0.log doesn't get rotated according to scribe's logrotate.log
opkg list syslog-ng
syslog-ng - 4.2.0-1 - syslog-ng reads and logs messages to the system console, log
files, other machines and/or users as specified by its
configuration file.
Error parsing config, syntax error, unexpected LL_FLOAT, expecting end of file in /opt/etc/syslog-ng.conf:1:1-1:4:
1-----> 4.2
1-----> ^^^
2 4.2
3 4.2
4 4.2
5 4.2
6 4.2
syslog-ng documentation: https://www.syslog-ng.com/technical-documents/list/syslog-ng-open-source-edition
contact:
GitHub Project: https://github.com/syslog-ng/syslog-ng
Chat with the Developers: https://gitter.im/syslog-ng/syslog-ng
Mailing List: https://lists.balabit.hu/mailman/listinfo/syslog-ng
[2023-12-07T21:23:44.029665] ERROR: configuration files without a version number have become unsupported in syslog-ng 3.13, please specify a version number using @version as the first line in the configuration file;
Thank you for your detailed response.I responded to the post in the other thread.
[ "$( ver_num "$fwvers" )" -lt "$( ver_num "$fwreqd" )"
if [ ! -x "/opt/bin/opkg" ] || [ "$fwname" != "$merlin" ] || [ "$( ver_num "$fwvers" )" -lt "$( ver_num "$fwreqd" )" ]
Ran a manual rotate just to see what happened. It triggered warnings and failures, stopped taking care of Skynet and that became empty too...This usually happens to me when one of the log files is too big. Check the files in that directory and see if any are over 1MB. If you find any, figure out why logrotate isn't rotating it. (Except dnsmasq and sysnet--they do their own).
The other time it happens can usually be fixed by refreshing the browser or toggling the "auto refresh" button on/off. It can take several seconds for a large log file to load.
Something made wlceventd.log work after the reinstall. So now I know that it works on 388.8.On logrotate: scribe edits post-mount to create a cron job so logrotate runs daily. 4 old logs are kept, with 2-4 being compressed.
/opt/etc/logrotate.conf sets a default of weekly rotation and then includes /opt/etc/logrotate.d
/opt/etc/logrotate.d/A00global loads, and sets a maximum file size of 4M.
So scribe is set up so that every log is rotated at least weekly, but if on the daily run, it is over 4M, it is rotated immediately.
Other files in /opt/etc/logrotate.d alter that behavior, and there should be one for each destination log you have. For example, messages is rotated daily, but only if it is at least 1M in size, and 9 are kept. You need one for each destination because you need to restart syslog-ng to refresh itself, otherwise it will keep the destination pointed to the old log file, which no longer exists after rotation.
As to wlceventd.log, make sure that you have the destination defined.
Works as intended after removing check as you indicated! Thanks for chasing this down.For installing it on GT-BE98 or in any router with 3006.102.1 or later, I've removed the following check:
Code:[ "$( ver_num "$fwvers" )" -lt "$( ver_num "$fwreqd" )"
from the part of the code checking the FW version:
Code:if [ ! -x "/opt/bin/opkg" ] || [ "$fwname" != "$merlin" ] || [ "$( ver_num "$fwvers" )" -lt "$( ver_num "$fwreqd" )" ]
For sure there is a more elegant way, but I gues involves checking the major release first (3006 instead of 3004)
EDIT: excepting this, everithying seems working smoothly!
EDIT 2: I created a PR for this: https://github.com/cynicastic/scribe/pull/46; I ask you to test it before merging, but I can confirm it works in my environment
If you want, you can also try the PR I edited on GitHub, waiting to be merged. I tested it in my environment, and seems to work as intended. It does check the major release before the minor fw version and if it's ok, it installs the scriptWorks as intended after removing check as you indicated! Thanks for chasing this down.
Welcome To SNBForums
SNBForums is a community for anyone who wants to learn about or discuss the latest in wireless routers, network storage and the ins and outs of building and maintaining a small network.
If you'd like to post a question, simply register and have at it!
While you're at it, please check out SmallNetBuilder for product reviews and our famous Router Charts, Ranker and plenty more!