title: calling an erlang application started on another module
body: <p>I am trying to use "<strong><a href="https://github.com/basho/lager" rel="nofollow">Lager</a></strong>" ( a logger application ). Lager was started from a main application module <strong>"A"</strong></p>
  
  <p>Following is how lager was specified in the .app file:</p>
  
  <pre><code>{application, myapp,
   [
    {description, ""},
    {vsn, "1"},
    {registered, []},
    {applications, [kernel, stdlib]},
    {mod, { ontoq, []}},
    {env, [
            {lager, [
              {handlers, [
                {lager_console_backend, info},
                {lager_file_backend, [{file, "error.log"}, {level, error}]},
                {lager_file_backend, [{file, "console.log"}, {level, info}]}
              ]}
            ]}
          ]
    }
   ]}.
  </code></pre>
  
  <p>I do start lager from my Application <strong>"A"</strong>'s start function:</p>
  
  <pre><code>start(_StartType, _StartArgs) -&gt;
    random:seed(erlang:now()),
    lager:start(),
    lager:info("here is something to the log ~p", ["SomeString"]),
    start_other_apps_that_call_module_B().
  </code></pre>
  
  <p>I have created another project module "B" that contains simply just plain erlang modules ( no applications ). From there, some of my functions attempts to write a log using lager:</p>
  
  <pre><code>lager:info("here is something to the log ~p", ["SomeString"]),
  </code></pre>
  
  <p>The above fails, somehow. I would have expected that "lager" is an atom that references to the registered application that is running on the ErlangVM. Somehow this does not seem to be the case. This is the failure message:</p>
  
  <pre><code>{undef,[{lager,info,["here is something to the log ~p",[["Something"]]],[]},{
  </code></pre>
  
  <p>Are there things that restrict an application visibility within the process tree</p>