[Elasticsearch] LogstashでApacheアクセスログをバッチで読み込む

Logstashはログ管理ツール。以下の機能を備えており、プラグイン形式で機能を拡張できるのが特徴。

  • input ログを記録するイベントを監視する
  • filter イベントに対しフィルタ処理を行う
  • codec inputから受け取ったイベントを指定した形式に整形する
  • output ログの出力を行う

Logstashのインストール

Logstashのテスト

アクセスログの読み込みテスト

Elasticsearchとの接続

es-apache-import

参考サイト

15分で作る、Logstash+Elasticsearchによるログ収集・解析環境 – さくらのナレッジ
http://knowledge.sakura.ad.jp/tech/2736/

Package Repositories
https://www.elastic.co/guide/en/logstash/current/package-repositories.html#_yum

Stashing Your First Event: Basic Logstash Example
https://www.elastic.co/guide/en/logstash/current/first-event.html

Reference [2.2]
https://www.elastic.co/guide/en/logstash/current/index.html

[ホスティング] ログローテートの設定

ログファイル更新のタイミング

何世代のログを残すか

ログファイルに日付を付加するか

圧縮するか (gzip)

ファイルごと(httpdやsyslogなど)の個別設定の所在

logrotate自体はデーモンでなくcronで実行されるので、設定変更後のデーモンの再起動などは不要。

参考サイト

@IT:syslogの保存期間を変更するには
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/409cngsyslogtime.html

[Webサービス] オンラインフォームいろいろ

スタティックなサイトにフィードバックフォームを設置したいようなとき、自力で作るよりオンラインフォームのサービスを使ったほうが得策だろうと思う機会が少なくない。フレームワークベースのWebアプリなサイトだったら、フォームの制御やバリデーション、メール通知などのインフラが予めあるから、フォームの1つぐらい作るのは容易いけど、スタティックなサイトだとフォーム1つ設置するだけでインフラが肥大化する。あるものは使おう。

というわけで、使えそうなサービスをググってみたので覚え書きリンク。

オンラインフォーム

Wufoo
http://www.wufoo.com/

EmailMeForm
http://www.emailmeform.com/

Cognito Forms
https://www.cognitoforms.com/

JotForm
https://www.jotform.com/

アンケートフォーム

SurveyMonkey
https://www.surveymonkey.com/

SurveyGizmo
https://www.surveygizmo.com/

[Laravel] Laravel 5 Repositoriesのインストール

リポジトリパターンを使うと、コントローラからデータアクセスのロジックを分離することができる。分離されたことでテストも容易になる。

インストール

app/Providers/RepositoryServiceProvider.php

config/app.php

参考サイト

GitHub – andersao/l5-repository: Laravel 5 – Repositories to abstract the database layer
https://github.com/andersao/l5-repository

Using Repository Pattern in Laravel 5 – Bosnadev – Code Factory
https://bosnadev.com/2015/03/07/using-repository-pattern-in-laravel-5/?utm_source=prettus-l5-repository&utm_medium=readme&utm_campaign=prettus-l5-repository

Laravel4.2のリポジトリパターン | アライドアーキテクツ エンジニアブログ
http://tech.aainc.co.jp/archives/10227

Laravelでプロジェクトを作成したらまずやることメモ – Qiita
http://qiita.com/ponko2/items/f2f59b43dae1561ceb50#laravel-5-repositories%E3%81%AE%E8%A8%AD%E5%AE%9A

[jQuery] セレクトボックスで選択したページにジャンプさせる (EasySelectBoxプラグイン使用)

デザイナがEasySelectBoxというjQueryプラグインを推してきたので、プラグインの挙動チェックを兼ねて、前回のエントリの内容をEasySelectBoxプラグインを使うように修正してみる。

参考サイト

GitHub – kosinix/easyselectbox: jQuery plugin for replacing html select with div element for easy styling with css
https://github.com/kosinix/easyselectbox

Easyselectbox.jsの使い方まとめ | Cly7796.net
http://cly7796.net/wp/javascript/plugin-easyselectbox/

[jQuery] セレクトボックスで選択したページにジャンプさせる

参考サイト

jQueryを使って、selectタグで選択された値によってリンク先を変更する方法 : おばけノート
http://obakenote.com/js/1189/

[Elasticsearch] チュートリアル wantedly-demo

Elasticsearchに慣れるために以下のチュートリアルをなぞってみる。解りやすい記事に感謝。

実践!Elasticsearch – Wantedly Engineer Blog
http://engineer.wantedly.com/2014/02/25/elasticsearch-at-wantedly-1.html

動作環境

Elasticsearch 2.2.1
プラグイン: head, kuromoji

analyzer と mapping の設定設定

設定をJSONに保存してコマンドで食わせてみる。

mapping.json

データ入力

同じく、データをJSONに保存してコマンドで食わせてみる。

requests.json

クエリを投げる

Headからクエリを投げてみる。

elasticsearch-head3
elasticsearch-head2

[Elasticsearch] プラグイン コマンドリファレンス

コアプラグインのインストール

コミュニティ非コアプラグインのインストール

カスタムURLからのインストール

インストールされているプラグイン一覧

プラグインの削除

コマンドヘルプ

参考サイト

Plugin Management
https://www.elastic.co/guide/en/elasticsearch/plugins/2.2/plugin-management.html

[Elasticsearch] kuromojiプラグイン

日本語の全文検索に必要な日本語形態素解析エンジン。

公式サイト

Japanese (kuromoji) Analysis Plugin
https://www.elastic.co/guide/en/elasticsearch/plugins/2.2/analysis-kuromoji.html

インストール手順

参考サイト

Elasticsearch に kuromoji を入れて日本語全文検索をする – Qiita
http://qiita.com/mserizawa/items/8335d39cacb87f12b678