New user's registration have been closed due to high spamming and low trafic on this forum. Please contact forum admins directly if you need an account. Thanks !

Every Day around 06:30 A.M., Squeezebox Server crashes

Got problems with your B2 or B3? Share and get helped!
Post Reply
A_Swissionary
Posts: 6
Joined: 05 Sep 2010, 18:07

Every Day around 06:30 A.M., Squeezebox Server crashes

Post by A_Swissionary »

Hi,
I use my B2 Server mainly to stream music to my SqueezeBoxes. I discovered this weird issue. I'm not sure if it had been around since I got the server and. But it has been persistently (and annoyingly) present for the last weeks.

What happens?
Basically, every day, around 06:30 A.M., my Squeezeboxes stop playing any music and become pretty much irresponsive. Around 20 minutes later, they are back on, but have usually left any memory of what they were playing before the outtage.

Could someone help me troubleshoot this, PLEASE?

I have already tried to analyze some stuff. I discover that, for which ever reason, the "cron.daily" tasks are scheduled to fire off at 06:26.
Also, someone or something seems to try starting SqueezeBox Server, which is already running, but then seems to crash right away...
ut I can't figure out which of the cron scripts is trying to perform this.

I find nothing special in the Syslog files except that the Daily Tasks are started and that the scripts are being rotated at about 06:26 A.M.

The Squeezebox Server.log file says:
2010-12-31 06:26:45 squeezecenter_safe stopped.
[...Here, the scripts rotate...]
2010-12-31 06:26:45 squeezecenter_safe started.
[10-12-31 06:27:20.6859] main::init (323) Starting Squeezebox Server (v7.5.1, rTRUNK, UNKNOWN) perl 5.008008
[10-12-31 06:27:42.5134] Slim::Networking::UDP::init (39) FATAL: There is already another copy of the Squeezebox Server running on this machine. (Address already in use)
[10-12-31 06:27:42.5344] Log::Log4perl::Logger::and_die (868) Warning: FATAL: There is already another copy of the Squeezebox Server running on this machine. (Address already in use) at /usr/share/squeezecenter/lib/Log/Log4perl/Logger.pm line 900
2010-12-31 06:48:35 SqueezeCenter died. Restarting.
[10-12-31 06:49:00.1758] main::init (323) Starting Squeezebox Server (v7.5.1, rTRUNK, UNKNOWN) perl 5.008008

...after that, things seem to run fine again.

Could someone help me out with any advise?

Thanks very much and best regards!
Cheeseboy
Posts: 789
Joined: 08 Apr 2007, 12:16

Re: Every Day around 06:30 A.M., Squeezebox Server crashes

Post by Cheeseboy »

Howdy,

I don't use it myself, so my only advice is this:

Code: Select all

# grep -r squeeze /etc
Then go through them all...
Ubi
Posts: 1549
Joined: 17 Jul 2007, 09:01

Re: Every Day around 06:30 A.M., Squeezebox Server crashes

Post by Ubi »

It sounds like the logrotate daemon sends a restart to squeezecenter, which goes online before it managed to go offline completely, and thus it detects the old copy still present. THe strange thing here is that logrotate for squeezecenter is set at weekly rotation, not daily. So are you sure squeezecenter drops every day?

(/etc/logrotate.d/squeezecenter)
A_Swissionary
Posts: 6
Joined: 05 Sep 2010, 18:07

Re: Every Day around 06:30 A.M., Squeezebox Server crashes

Post by A_Swissionary »

Hi there,
I'm so sorry it took me so long to send a reply..
But now that I took the time to check the issue out more intensely, here's what I found:
Yes, indeed my SqueeceCenter restarts daily at 06:30.
And yes, it is due to the commands in the logrotate file.
The reason why the server software crashes daily rather than weekly is because the logrotate also initiates a restart if the log file reaches a certain size. And as, for some other weird reason, my server.log file gets very, very big throughout a day (mostly stuffed with repeating error messages), this criteria is met nearly every morning.
Well, I still don't know why my Squeezebox Server has to die and take a 30 minute break before restarting; so for now, I disabled the lines which initiate a restarting of squeezecenter.
so in /etc/logrotate.d/squeezecenter I commented this line twice:
# invoke-rc.d squeezecenter start || true

This may not be the smartest solution, but it was the only one I could think of;
and indeed: Since I disabled those lines, my SqueezeCenter works just fine.

Thanks for all the help!
René
Ubi
Posts: 1549
Joined: 17 Jul 2007, 09:01

Re: Every Day around 06:30 A.M., Squeezebox Server crashes

Post by Ubi »

wouldnt it be smart to look at those error messages too? I guess your computer is trying hard to tell you something...
A_Swissionary
Posts: 6
Joined: 05 Sep 2010, 18:07

Re: Every Day around 06:30 A.M., Squeezebox Server crashes

Post by A_Swissionary »

Hi,
I did try to consider those messages for quite a while actually.
But after going through lines and lines of programming Code, browsing the forums of SqueeceCenter, its plugins and PERL in general for hours, I lost my motivation to carry on, especially considering the fact that rumors of a completely new B2 firmware started to surface, which would require me to reinstall my system anyway.

I must be more clear though. The message in the log files is categorized as a "WARNING". It's always nearly the same:

Code: Select all

"Use of uninitialized value in [concatenation | delete | eq | hash element] in [filename, changes when I (de)activate plugins] line [differs too]".
As far as I found out, the messages have something to do with accented characters in ID3 Tags which aren't yet properly supported by all components I use.
I'll recheck the issue after the Bubba Update. if the messages stilll keep flooding in, I'll probably resume my quest for hunting their source down.

Best regards,
René
Ubi
Posts: 1549
Joined: 17 Jul 2007, 09:01

Re: Every Day around 06:30 A.M., Squeezebox Server crashes

Post by Ubi »

Well, log messages of level warning are generally of the informative kind. They seem to do more harm than good: You can change the loglevel on your squeezebox server to a more stringent level

in /var/lib/squeezecenter/prefs/log.conf there is a few lines that say WARNING.

Code: Select all

grep -in warn /var/lib/squeezecenter/prefs/log.conf
63:log4perl.logger.perfmon = WARN, screen-raw, perfmon
98:log4perl.logger.plugin.songscanner = WARN
I suggest making a backup of /var/lib/squeezecenter/prefs/log.conf and changing the two WARN into ERROR.
Post Reply