Movable Type 6.3.2 Release Notes
This version of Movable Type was released September 28, 2016.
NEW AND IMPROVED FUNCTIONS
Output a log file on demand
In this newest version, Movable Type is able to output the activity log to an external file on demand. Of course, output of the CSV file from the activity log listing screen is also available. This feature make it possible to monitor the activity log easily and detect system errors and security issues. Also, it is possible to control the log output in accordance with the log level. This means you can control logs by production server or development server.
Logging Level
The log levels now supported are debug
, info
, warn
and error
. debug
outputs the most information from the log,error
is the most minimal. You can specify the logging level by using the LoggerLevel configuration directive in the mt-config.cgi configuration file.
- debug
- A large amount of the log is output. Movable Type does not use the `debug` logging level, but some plugins are using it. If this level is set as the LoggerLevel, the external log file contains all types of log entries. This level is recommended for a development server.
- info
- A log at this level is just information such as sign-in’s, sign-out’s, and creating new entries. If this level is set as the LoggerLevel, the external log file contains `error`, `warn` and `info` level log entries.
- warn
- This log is a kind of error but it does not impact the running of Movable Type. However, it is better if you check the `warn` log entries because an abnormal situation has occurred.
- error
- This log is recorded in the case of issues affecting the system. For example, when writing to the database or to the file system has failed, or when security issues have occurred. Also, an `error` will be recorded in the case of a security risk such as a sign-in failure.
Log file
The log file that is named al-yyyymmdd.log will be output in the directory that is specified by LoggerPath configuration directive. (yyyymmdd will replaced with server date)
Logger modules
Currently, Movable Type supports the Log::Log4perl and Log::Minimal perl modules. Movable Type will detect available modules automatically. If no module is installed and available, the log file will not output. However, you can specify the name of a logging perl module in the LoggerModule configuration directive such as Log4perl
, Minimal
or any module name that is added a plugin. For example:
LoggerModule Your::Plugin::Log
Develop a custom logger
You can make a custom logger that uses another logger module, or output to Slack or something else, for example. Your custom logger module should inherit MT::Util::Log and should implement debug, info, warn and error methods. The basic code sample is here:
package Your::Plugin::Log;
use strict;
use warnings;
use MT;
use base qw(MT::Util::Log);
sub new {
my ( $self, $level, $file ) = @_;
# do something
return $self;
}
sub debug {
my ( $class, $msg ) = @_;
# do something
}
sub info {
my ( $class, $msg ) = @_;
# do something
}
sub warn {
my ( $class, $msg ) = @_;
# do something
}
sub error {
my ( $class, $msg ) = @_;
# do something
}
1;
NEW CONFIGURATION DIRECTIVES
LoggerLevel (none | debug | info | warn | error)
Define a log level which log will be output. debug
outputs the most log entries,error
is the most minimal.
If specifies none
or did not specifies any value, the log will not be output.
default: none
LoggerPath
Define a path to output directory for log file. If not set, the log will not be output. By default, LoggerPath is not defined.
LoggerModule
Define a logger module. By default Log4perl
and Minimal
are available. Also, if you have custom logger module that is added by a plugin, you can specify module name like: Your::Plugin::Log
default: Log4perl
RESOLVED ISSUES
Asset
- Revised input validation for an upload path. Now validation error will occur when entered path contains invalid character for the URL. (#114155)
- Asset insertion dialog now works when you turn off checkbox on a dialog. (#114123)
Entry and page
- Text word wrapping now works when TinyMCE is disabled on system level. (#113312)
Server Sync
- “Sync Now” function now works when you remove directories on a sync source server. (#114131)
Dynamic Publishing
- Custom Fields html generating now works. (#114148)
ACKNOWLEDGEMENTS
The release of Movable Type 6.3.2 brings with it a large number of improvements that were made possible by the help and support of Movable Type community members. We would like to include a special shout out to the following members for their contributions to this update:
- Dan Wolfgang (#113312)
- taiju@alfasado (#114123)