Logitech Media Server log file
Logfile and Logging
After encountering a problem, the user is usually asked to recreate the problem with a log file with some debug options to help find the problem. This section describes the ways to get a log file.
The messages in a log file will depend on which debugging options have been chosen. The debugging option can be chosen either on the command line, or from the slimserver web page under Server Settings/Debugging. The debugging options all have names which begin "d_" such as d_plugins, d_server and d_files.
The list of debugging options can be seen in the Server Setting/ Debugging web page but this provide no explanation of the option. A user can get a brief explanation by starting slimserver from a command line - this list is repeated later in this section.
The debugging messages will be sent to the logfile. The logfile is normally output to either
- a browser window
- a log file
- the "screen" if slimserver is run from a command line (i.e. Terminal in OSX, shell in Linux, command prompt in Windows).
There is a slight difference in the information logged depending on the output device. The messages output to the file and browser window will only be the log messages enabled from Slimserver. Whereas sending the log output to a command line window is useful because not only are the the log messages displayed but they will be interleaved with messages from supporting applications such as Mplayer, socketwrapper or invoked scripts which would not be displayed in a browser window or copied to a logfile.
The following are instruction about getting logging output:
- Logging from command prompt, shell or command line depending on OS
- Logging to a file & viewing log file with browser window
Running SqueezeCenter from a Command Line
Apple OS X
- Open a Terminal window
- Ensure squeezecenter is not running.
- cd to the directory where squeezecenterhas been installed - it will have the file squeezecenter.pl. If squeezecenter has been installed in the default location and it is an "all user" squeezecenter installation then the command will probably be
- To start squeezecenter, type the following command with the relevant logging options (this example has d_server and d_plugins)
./squeezecenter.pl --d_plugins --d_source
Message should now appear on the screen and scroll up.
The following instruction assume that squeezecenter has been installed in the default directory which is C:\Program Files\SqueezeCenter\server - if squeezecenter was not installed in the default location then replace this path by the one which leads to the directory containing squeezecenter.exe.
- Stop squeezecenter (probably from the system tray icon).
- Click "Start" button and then "run" menu.
- Enter "cmd" in the dialogue field and press return; a command prompt window (i.e. c:/> ) should open.
- Enter the following command at the prompt:
cd C:\Program Files\SqueezeCenter\server
- Enter the command "squeezecenter.exe" with the relevant debug option such –d_source and –d_plugins as follow
squeezecenter --d_source --d_plugins
- Messages will scroll up - look for error messages if you are tracking a problem. You can hit CTRL/C to stop slimserver and so prevent other messages. You can make the window bigger from the properties dialog accessed through top left corner icon of window.
The following assume the installation of squeezecenter in the default location - this may vary depending on the version of Linux (e.g. Debian, Gentoo)
- Stop squeezecenter
- cd to the directory which contains squeezecenter.pl typically as follows
- Start squeezecenter with the desired debugging options (e.g. plugins and source)
./squeezecenter.pl --d_plugins --d_source
Sometimes it is useful to extend the size of the window so that more messages may be logged.
Logging to a File
Messages are normally logged to a file and this file can be viewed by web browser Server Setting/Debugging and click on the hyperlink word "here" at the top LHS. To ensure the window is up to date, press the refresh button. The default filename and location is OS dependent.
From a command line (or the script that starts squeezecenter), the command line option -logfile allow the user to specify the filename of the log file.
The Most Useful Debug Options
For many of the normal user problems which involve plugins, or the inability to play a file, playlist, or stream, the following options are ones that could be tried first to see if they shed any light on the problem.
|d_plugins||Enables output of diagnostics messages from plugins as well as message s about loading, unloading and initialisation of plugins. Especially useful at startup in case there are problems when loading plugins.|
|d_source||Provides messages about the analysis of an audio source type and the decision making about the format, any transcoding and if another app is used - the invoking command line in order to be played. This is useful when a track or stream appears to start playing but no sound is heard|
|d_server||This provide messages about server. It is useful when there are problems in startup and it isn't';t clear why the server may not start or may not provide all the expected facilities.|
|d_files||Provides messages when file names are being parsed and some URL parsing. Also information when files are opened and closed. Can provide useful information when it is not clear why slimserver cannot access a specific file.|
|d_info||The option provide additional information about the items which is being played usually this is tag related information but some message may help if there are problem when playing the file/stream.|
|d_paths||Provides information about the file paths that slimserver uses. Useful when trying to find out why slimserver cannot find executables/binaries which may be used when playing but which have been installed after slimserver installation e.g. Mplayer, lame, faad2.|
|d_parse||Provides information when parsing playlist such as PLS, WPL, M3U, CUE, ASX, RTSP, RAM, SMIL and FLAC tags. Useful if there problems with the contents of a playlist and it is not clear where the problem is in playlist.|
|d_remotestream||provide information when trying to play a remote stream. This is useful to identify problems when not able to play a remote stream. This option provide information on the protocol exchange.|
Complete List of Debug Options
The following is the full list of debugging options.
|–d_artwork||=> Display information on artwork display|
|–d_cli||=> Display debugging information for the command line interface interface|
|–d_client||=> Display per-client debugging.|
|–d_command||=> Display internal command execution|
|–d_control||=> Low level player control information|
|–d_datamodel||=> Data model search and field mapping debugging|
|–d_directstream||=> Debugging info on direct streaming|
|–d_display||=> Show what (should be) on the player's display|
|–d_factorytest||=> Information used during factory testing|
|–d_favorites||=> Information about favorite tracks|
|–d_files||=> Files, paths, opening and closing|
|–d_firmware||=> Information during Squeezebox firmware updates|
|–d_formats||=> Information about importing data from various file formats|
|–d_graphics||=> Information bitmap graphic display|
|–d_http||=> HTTP activity|
|–d_http_async||=> AsyncHTTP activity|
|–d_http_verbose||=> Even more HTTP activity|
|–d_info||=> MP3/ID3 track information|
|–d_import||=> Information on external data import|
|–d_ir||=> Infrared activity|
|–d_irtm||=> Infrared activity diagnostics|
|–d_itunes||=> iTunes synchronization information|
|–d_itunes_verbose||=> verbose iTunes Synchronization information|
|–d_mdns||=> Multicast DNS aka Zeroconf aka Rendezvous information|
|–d_memory||=> Turns on memory debugging interface - developers only.|
|–d_moodlogic||=> MoodLogic synchronization information|
|–d_musicmagic||=> MusicMagic synchronization information|
|–d_mp3||=> MP3 frame detection|
|–d_mysql||=> MySQL Process Information|
|–d_os||=> Operating system detection information|
|–d_paths||=> File path processing information|
|–d_parse||=> Playlist parsing information|
|–d_playlist||=> High level playlist and control information|
|–d_plugins||=> Show information about plugins|
|–d_protocol||=> Client protocol information|
|–d_prefs||=> Preferences file information|
|–d_remotestream||=> Information about remote HTTP streams and playlists|
|–d_scan||=> Information about scanning directories and filelists|
|–d_select||=> Information about the select process|
|–d_server||=> Basic server functionality|
|–d_slimproto||=> Slimproto debugging information|
|–d_slimproto_v||=> Slimproto verbose debugging information|
|–d_source||=> Information about source audio files and conversion|
|–d_source_v||=> Verbose information about source audio files|
|–d_sql||=> Verbose SQL debugging|
|–d_stdio||=> Standard I/O command debugging|
|–d_startup||=> Startup/Bootstrap debugging for @INC|
|–d_stream||=> Information about player streaming protocol|
|–d_stream_v||=> Verbose information about player streaming protocol|
|–d_sync||=> Information about multi player synchronization|
|–d_sync_v||=> Verbose information about multi player synchronization|
|–d_time||=> Internal timer information|
|–d_ui||=> Player user interface information|
|–d_usage||=> Display buffer usage codes on the player's display|