1
votes

When I load project with hypnotoad or morbo I get this error:

Can't load application from file "/var/www/foo/bar.pl": Plugin "Log::Any" missing, maybe you need to install it?

Here's a snippet from my applet:

#!/usr/bin/env perl
use Mojolicious::Lite;
use LWP::UserAgent;
require HTTP::Request;
use JSON;
use Log::Log4perl;
use Validator::LIVR;
Validator::LIVR->default_auto_trim(1);

Log::Log4perl->init(app->home->child('log.conf')->to_string);
plugin 'Log::Any' => {logger => 'Log::Log4perl'};

my $logger = Log::Log4perl->get_logger;

my $config = plugin Config => {file => 'config.pl'};

our $JSON = JSON->new->allow_nonref->utf8;

our $ua  = LWP::UserAgent->new;

These are the packages I have installed:

  • libapache-logformat-compiler-perl
  • liblog-any-adapter-callback-perl
  • liblog-any-adapter-dispatch-perl
  • liblog-any-adapter-filehandle-perl
  • liblog-any-adapter-log4perl-perl
  • liblog-any-adapter-screen-perl
  • liblog-any-adapter-tap-perl
  • liblog-any-perl
  • liblog-dispatch-config-perl
  • liblog-dispatch-configurator-any-perl
  • liblog-dispatch-perl
  • liblog-log4perl-perl
  • liblog-report-optional-perl
  • liblog-report-perl
  • libmoox-log-any-perl
  • libmoox-role-logger-perl
  • libplack-middleware-logany-perl

These are all the modules I have installed with CPAN (cpan -l | grep -i log::)

  • Log::Dispatch 2.69
  • Log::Report 1.29
  • Log::Any 1.708
  • Log::Log4perl 1.49
  • Log::Any::Proxy 1.708
  • Log::Any::Plugin 0.011
  • Log::Any::Adapter 1.708
  • Log::Any::Test 1.708
  • Log::Any::Manager 1.708
  • Log::Any::Plugin::Stringify 0.011
  • Log::Any::Plugin::Levels 0.011
  • Log::Any::Plugin::Format 0.02
  • Log::Any::Plugin::Encode 0.011
  • Log::Any::Plugin::Util 0.011
  • Log::Any::Plugin::History 0.02
  • Log::Any::Adapter::Stderr 1.708
  • Log::Any::Adapter::Syslog 1.708
  • Log::Any::Adapter::Screen 0.140
  • Log::Any::Adapter::File 1.708
  • Log::Any::Adapter::Base 1.708
  • Log::Any::Adapter::MojoLog 0.04
  • Log::Any::Adapter::Stdout 1.708
  • Log::Any::Adapter::Capture 1.708
  • Log::Any::Adapter::Multiplex undef
  • Log::Any::Adapter::Log4perl 0.09
  • Log::Any::Adapter::Test 1.708
  • Log::Any::Adapter::Callback 0.100
  • Log::Any::Adapter::Util 1.708
  • Log::Any::Adapter::Null 1.708
  • Log::Any::Proxy::Test 1.708
  • Log::Any::Proxy::Null 1.708
  • Log::Log4perl::Appender undef
  • Log::Log4perl::NDC undef
  • Log::Log4perl::Resurrector undef
  • Log::Log4perl::Filter undef
  • Log::Log4perl::Logger undef
  • Log::Log4perl::Config undef
  • Log::Log4perl::DateFormat undef
  • Log::Log4perl::InternalDebug undef
  • Log::Log4perl::MDC undef
  • Log::Log4perl::Level undef
  • Log::Log4perl::FAQ undef
  • Log::Log4perl::Layout undef
  • Log::Log4perl::Util undef
  • Log::Log4perl::JavaMap undef
  • Log::Log4perl::Catalyst 1.49
  • Log::Log4perl::Appender::Screen undef
  • Log::Log4perl::Appender::String undef
  • Log::Log4perl::Appender::File undef
  • Log::Log4perl::Appender::TestFileCreeper undef
  • Log::Log4perl::Appender::Buffer undef
  • Log::Log4perl::Appender::ScreenColoredLevels undef
  • Log::Log4perl::Appender::TestArrayBuffer undef
  • Log::Log4perl::Appender::TestBuffer undef
  • Log::Log4perl::Appender::Synchronized undef
  • Log::Log4perl::Appender::DBI undef
  • Log::Log4perl::Appender::Socket undef
  • Log::Log4perl::Appender::Limit undef
  • Log::Log4perl::Appender::RRDs undef
  • Log::Log4perl::Layout::SimpleLayout undef
  • Log::Log4perl::Layout::PatternLayout undef
  • Log::Log4perl::Layout::NoopLayout undef
  • Log::Log4perl::Layout::PatternLayout::Multiline undef
  • Log::Log4perl::Util::Semaphore undef
  • Log::Log4perl::Util::TimeTracker undef
  • Log::Log4perl::JavaMap::JDBCAppender undef
  • Log::Log4perl::JavaMap::RollingFileAppender undef
  • Log::Log4perl::JavaMap::ConsoleAppender undef
  • Log::Log4perl::JavaMap::TestBuffer undef
  • Log::Log4perl::JavaMap::NTEventLogAppender undef
  • Log::Log4perl::JavaMap::SyslogAppender undef
  • Log::Log4perl::JavaMap::FileAppender undef
  • Log::Log4perl::Filter::Boolean undef
  • Log::Log4perl::Filter::LevelMatch undef
  • Log::Log4perl::Filter::StringMatch undef
  • Log::Log4perl::Filter::MDC undef
  • Log::Log4perl::Filter::LevelRange undef
  • Log::Log4perl::Config::DOMConfigurator 0.03
  • Log::Log4perl::Config::Watch undef
  • Log::Log4perl::Config::BaseConfigurator undef
  • Log::Log4perl::Config::PropertyConfigurator undef

I just don't know what the problem is.

1
That did it! 4 hours of trying to find the right plugin! Thank a mil. - Chubeez

1 Answers

3
votes

You need to install the Mojolicious::Plugin::Log::Any module (by doing cpanm Mojolicious::Plugin::Log::Any for instance).

For what it's worth, I found that by googling "Mojolicious Log::Any", and one of the first results was the metacpan page of the module. (the point of this sentence is not to say that this is a bad question; just to suggest a google query for the next time you have a similar issue)