Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

nginxのログを非スケーラブルに省メモリな方法で蓄積する

561 Aufrufe

Veröffentlicht am

nginxのログを非スケーラブルに省メモリな方法で蓄積する

Veröffentlicht in: Internet
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

nginxのログを非スケーラブルに省メモリな方法で蓄積する

  1. 1. nginxのログを非スケーラブルに 省メモリな方法で蓄積する @gepuro
  2. 2. 動機 脱google analyticsをする。 リファラーやセッションはwebビーコンで取得できるようになったが、サイトの レスポンスなどは無い 個人のVPSはメモリが1Gしかない · · · 2/8
  3. 3. nginx リバースプロキシとして利用している。 一度アクセスをここに集めて、docker上で動くアプリに振り分けている。 3/8
  4. 4. ログの出力方法をltsvにする apacheみたいな出力フォーマットはパースが面倒なのでltsvにする· 4/8
  5. 5. nginx.conf (1/2) log_format ltsv 'domain:$hostt' 'host:$remote_addrt' 'user:$remote_usert' 'time:$time_localt' 'method:$request_methodt' 'path:$request_urit' 'query_string:$query_stringt' 'referer:$http_referert' 5/8
  6. 6. nginx.conf (2/2) 'request_time:$request_timet' 'protocol:$server_protocolt' 'size:$body_bytes_sentt' 'user_agent:$http_user_agentt' 'cookie:$http_cookiet' 'set_cookie:$sent_http_set_cookiet' 'upstream_addr:$upstream_addrt' 'upstream_cache_status:$upstream_cache_statust' 'upstream_response_time:$upstream_response_timet' 'status:$statust' 'bytes_sent:$bytes_sentt' 'body_bytes_sent:$body_bytes_sentt' 'forwardedfor:$http_x_forwarded_for'; 6/8
  7. 7. ログの監視と蓄積 tail -Fでログの監視をする sqliteへ保存 現在のメモリ使用量 · · · docker statsで確認 7.786MBと省メモリ - - 7/8
  8. 8. さいごに fluentdみたいな高機能な物を使うよりも、 まずは単純な仕組みで解決して、メ モリを節約。 個人のVPSで複数のサービスを動かす時は、ケチケチした運用が大事 8/8

×