title: log4rs error Log4rs(Os { code: 2, kind: NotFound, message: "No such file or directory" })
body: <p>I'm trying to implement log4rs by following <a href="https://docs.rs/log4rs/0.8.0/log4rs/" rel="nofollow noreferrer">the docs</a>. My goal is to put the result of <code>info!("INFO")</code> into the file requests.log, but I get an error:</p>
  
  <blockquote>
    <p>thread 'main' panicked at 'called <code>Result::unwrap()</code> on an <code>Err</code>
    value: Log4rs(Os { code: 2, kind: NotFound, message: "No such file or
    directory" })', libcore/result.rs:945:5</p>
  </blockquote>
  
  <p>I have the following files in the src folder:</p>
  
  <pre class="lang-none prettyprint-override"><code>- main.rs
  - log4rs.yml
  - requests.log
  </code></pre>
  
  <p>main.rs:</p>
  
  <pre><code>#[macro_use]
  extern crate log;
  extern crate log4rs;
  
  fn main() {
      println!("Hello, world!");
      log4rs::init_file("log4rs.yml", Default::default()).unwrap();
      info!("INFO");
  }
  </code></pre>
  
  <p>the config file log4rs.yml:</p>
  
  <pre><code># Scan this file for changes every 30 seconds
  refresh_rate: 30 seconds
  
  appenders:
    # An appender named "stdout" that writes to stdout
    stdout:
      kind: console
  
    # An appender named "requests" that writes to a file with a custom pattern encoder
    requests:
      kind: file
      path: "requests.log"
      encoder:
        pattern: "{d} - {m}{n}"
  
  # Set the default logging level to "warn" and attach the "stdout" appender to the root
  root:
    level: warn
    appenders:
      - stdout
  
  loggers:
    # Raise the maximum log level for events sent to the "app::backend::db" logger to "info"
    app::backend::db:
      level: info
  
    # Route log events sent to the "app::requests" logger to the "requests" appender,
    # and *not* the normal appenders installed at the root
    app::requests:
      level: info
      appenders:
        - requests
      additive: false
  </code></pre>