title: centralizing logging from many locations
body: <p>I'm trying to find best practice to centralizing logging from many locations -server, android devices.</p>
  
  <p>Current my logging condition is as below.</p>
  
  <ol>
  <li><p>log4net - ASP.NET IIS</p>
  
  <ul>
  <li>it saves warning, error log to it's IIS Server local storage.</li>
  <li>When it needed, connect to each server and investigate log files.</li>
  </ul></li>
  <li><p>slf4/log4j, FireCrash  - Android app</p>
  
  <ul>
  <li>it saves log cats log to its local storage</li>
  <li>When it needed, my app zips it and send it by 'Android share' feature.</li>
  <li>only runtime exception, it alert to me by the FireCrash solution.</li>
  </ul></li>
  <li><p>log4js - Node JS</p>
  
  <ul>
  <li>it saves my application's log to it's local storage, and connect to the server when it needed.</li>
  </ul></li>
  </ol>
  
  <p>1st time, I tried to find a solution to gathering it's log to AWS S3.  I found an s3-specific appender for log4net.  But not at slf4j and log4js.</p>
  
  <p>2nd time, I tried to use AWS cloud watch appender(<a href="https://github.com/camitz/CloudWatchAppender" rel="nofollow noreferrer">https://github.com/camitz/CloudWatchAppender</a>).  It worked in my log4net environment.  But it is not easy monitoring and not for my android, nodejs.</p>
  
  <p>Someone recommended Elastic stack(ElasticSearch, Logstack, Kibana).  But I'm not sure it might fit my cases.  </p>
  
  <p>How can I save all logs to one centralized storage?</p>