=head1 NAME

Glib::Log -  A flexible logging mechanism

=cut

=for object Glib::Log A flexible logging mechanism
=cut

=for object Glib::Log
=cut

=for object Glib::Log
=cut




=head1 METHODS

=head2 scalar = Glib::Log-E<gt>B<set_always_fatal> ($fatal_mask)

=over

=item * $fatal_mask (scalar) 

=back

=head2 Glib-E<gt>B<critical> ($domain, $message)

=over

=item * $domain (string or undef) 

=item * $message (string) 

=back

=head2 Glib-E<gt>B<debug> ($domain, $message)

=over

=item * $domain (string or undef) 

=item * $message (string) 

=back

=head2 Glib::Log::default_handler ($log_domain, $log_level, $message, ...)

=over

=item * $log_domain (string) 

=item * $log_level (scalar) 

=item * $message (string) 

=item * ... (list) possible "userdata" argument ignored

=back

The arguments are the same as taken by the function for set_handler or
set_default_handler.

=head2 prev_log_func = Glib::Log->B<set_default_handler> ($log_func, $user_data)

=over

=item * $log_func (subroutine) handler function or undef

=item * $user_data (scalar) 

=back

Install log_func as the default log handler.  log_func is called for
anything which doesn't otherwise have a handler (either
Glib::Log->set_handler, or the L<Glib::xsapi|Glib::xsapi>
gperl_handle_logs_for),

    &$log_func ($log_domain, $log_levels, $message, $user_data)

where $log_domain is a string, and $log_levels is a
Glib::LogLevelFlags of level and flags being reported.

If log_func is \&Glib::Log::default_handler or undef then Glib's
default handler is set.

The return value from C<set_default_handler> is the previous handler.
This is \&Glib::Log::default_handler for Glib's default, otherwise a
Perl function previously installed.  If the handler is some other
non-Perl function then currently the return is undef, but perhaps that
will change to some wrapped thing, except that without associated
userdata there's very little which could be done with it (it couldn't
be reinstalled later without its userdata).

Since: glib 2.6

=head2 Glib-E<gt>B<error> ($domain, $message)

=over

=item * $domain (string or undef) 

=item * $message (string) 

=back

=head2 scalar = Glib::Log-E<gt>B<set_fatal_mask> ($log_domain, $fatal_mask)

=over

=item * $log_domain (string) 

=item * $fatal_mask (scalar) 

=back

=head2 integer = Glib::Log-E<gt>B<set_handler> ($log_domain, $log_levels, $log_func, $user_data=undef)

=over

=item * $log_domain (string or undef) name of the domain to handle with this callback.

=item * $log_levels (Glib::LogLevelFlags) log levels to handle with this callback

=item * $log_func (subroutine) handler function

=item * $user_data (scalar) 

=back





$log_func will be called as

    &$log_func ($log_domain, $log_levels, $message, $user_data);

where $log_domain is the name requested and $log_levels is a
Glib::LogLevelFlags of level and flags being reported.

=head2 Glib-E<gt>B<info> ($domain, $message)

=over

=item * $domain (string or undef) 

=item * $message (string) 

=back

=head2 Glib-E<gt>B<log> ($log_domain, $log_level, $message)

=over

=item * $log_domain (string or undef) 

=item * $log_level (scalar) 

=item * $message (string) 

=back

=head2 Glib-E<gt>B<message> ($domain, $message)

=over

=item * $domain (string or undef) 

=item * $message (string) 

=back

=head2 Glib::Log-E<gt>B<remove_handler> ($log_domain, $handler_id)

=over

=item * $log_domain (string or undef) 

=item * $handler_id (integer) as returned by C<set_handler>

=back



=head2 Glib-E<gt>B<warning> ($domain, $message)

=over

=item * $domain (string or undef) 

=item * $message (string) 

=back



=cut


=head1 ENUMS AND FLAGS

=head2 flags Glib::LogLevelFlags



=over

=item * 'recursion' / 'G_LOG_FLAG_RECURSION'

=item * 'fatal' / 'G_LOG_FLAG_FATAL'

=item * 'error' / 'G_LOG_LEVEL_ERROR'

=item * 'critical' / 'G_LOG_LEVEL_CRITICAL'

=item * 'warning' / 'G_LOG_LEVEL_WARNING'

=item * 'message' / 'G_LOG_LEVEL_MESSAGE'

=item * 'info' / 'G_LOG_LEVEL_INFO'

=item * 'debug' / 'G_LOG_LEVEL_DEBUG'

=item * 'fatal-mask' / 'G_LOG_FATAL_MASK'

=back




=cut


=head1 SEE ALSO

L<Glib>


=cut


=head1 COPYRIGHT

Copyright (C) 2003-2011 by the gtk2-perl team.

This software is licensed under the LGPL.  See L<Glib> for a full notice.



=cut

