犬ターネット

Archive : 2013年06月

バロウズ!

バロウズ!

バロウズ!

バロウズ!

バロウズ!

バロウズ!

バロウズ!

バロウズ!

バロウズ!

(2013.06.29 @ FIREBIRD, Shin-Matsudo)


夜10時になると

「オバケとドロボウとオオカミさんとライオンさんがやってくるぞ、はやく寝ないとおそわれちゃうぞ」って言ったのが結構効いたのか、夜9時過ぎには寝るようになった娘。

昔は俺からベッドに誘っていたのに最近では「はやく!パパ!ドロボウさんくるよ!ねるよ!」って逆に誘われるようになった。

...なんか人格形成に影響でないだろうか、考えすぎかな。


【削除】上尾の天気

不安定だから削除。

上尾の天気だけを表示するやつを作った。

上尾の天気

使ってるAPIは↓これ。すごい、超便利。

OpenWeatherMap - actual and forecast weather.


老い

先日実家に帰ったら母が2種類の眼鏡を使っていて、一個は老眼鏡なのは知ってたけどもう一個は何?と聞いたら、乱視を矯正する眼鏡、最近乱視気味だからこれがないとよく見えないんだよね、と言っていた。

母は今年の正月に還暦を迎えた。息子の俺がいうのもなんだけど実年齢よりは若く見える。母に会った友達も必ずそう言うから多分そうなんだろう。でもやっぱり老いってのは誰もが必ず迎えるものなんだな。

今のうちにたくさん親孝行しないと。


Instagram の RSSフィードを生成するサービス

OPENSHIFT を使って作った。

instagrss - instagram RSS feed

OPENSHIFTでどんくらいのことできるのか、検証も兼ねてしばらく動かしてみる。


インターネット・パワー

ありがとう、インターネット・パワー

ありがとう、ありがとう...


OPENSHIFT の cron jobs で PHP を実行させる

cron の導入の仕方は以下にまとまってる。

Getting Started with CRON Jobs on OpenShift | OpenShift by Red Hat

もちろん cron で PHP も実行可能。以下にまとめておく。

sshでログイン

git push してもいいんだけど、手っ取り早く ssh でログインして作業。ログインの仕方は割愛。

PHPファイルを作成

.openshift/cron/minutely/ticktock.php てファイルを作る。ファイル先頭に「#!/usr/bin/php」つけないと実行されないので注意。

> cd ~/app-root/repo/.openshift/cron/minutely/
> vim ticktock.php

  #!/usr/bin/php
  <?php
  $logdir = $_SERVER['OPENSHIFT_PHP_LOG_DIR'];
  $logfile = 'ticktock.log';
  $date = date('Y年m月d日 H時i分s秒') . "\n";
  file_put_contents( "{$logdir}/{$logfile}", $date, FILE_APPEND );

> chmod +x ticktock.php

jobs.allow を作成

先ほど作った PHP ファイルと同一階層に jobs.allow を作って ticktock.php を記述。

> cd ~/app-root/repo/.openshift/cron/minutely/
> vim jobs.allow

  ticktock.php

これでOK。

確認

tailして確認してみる。

> tail -f ~/php/logs/ticktock.log
2013年06月21日 07時39分19秒
2013年06月21日 07時40分22秒
2013年06月21日 07時41分16秒
2013年06月21日 07時42分21秒
2013年06月21日 07時43分16秒
2013年06月21日 07時44分15秒

多少バラつきがあるけど一応1分毎に実行されてる。

cronを止める

jobs.allow の ticktock.php をコメントアウトすればOK。

> cd ~/app-root/repo/.openshift/cron/minutely/
> vim jobs.allow

  #ticktock.php

雑感

無料プランだと、5分毎とか30分毎実行みたいな細かい制御はできない。やるとすれば、PHPファイル内で現在分をとって、5や30で割り切れたら実行する、みたいにするしか無さげ。

とはいえ、無料でPHPもcronもsshも使えるっていうのは最近のPaaSの中だとダントツでいいかもしれない。

appfogが終わりそうになったら移行を考えよう。


ツイッターのアイコンをアスキーアートみたいにするやつ

を作った。

twitter icon 2 ascii

何の役にもたたない。


gifboom の情報を JSON で返す API を作った

gifboom ていうgifアニメーション(実態はmp4)の情報をJSONで返すAPIを作った。

gifboom oreore API

gifboom、使ってる人あんまり見かけないけどどうなんだろ。


昼散歩で撮影した猫2

前回 から3ヵ月経ってそこそこたまってきたのでまとめた。


スキルキルス!スキルキルス!

スキルキルス!

スキルキルス!

スキルキルス!

スキルキルス!

スキルキルス!

スキルキルス!

スキルキルス!

スキルキルス!

スキルキルス!

スキルキルス!スキルキルス!

( 2013.06.08 at shelter, shimokitazawa )


MongoDB の ログローテイト

MongoDB のログローテイトについては公式サイトにちゃんと書かれているから好きな方法を使えばいい。

ここでは一番手っ取り早い「killall -SIGUSR1 mongod」を使うことにする。手順はざっと以下のような感じ。

------

killall -SIGUSR1 mongod を実行すると、既存のログファイルは

mongodb.log.2013-05-24T23-30-00

みたいにタイムスタンプ付でリネームされて、新しいログファイルが生成される。

その後で gzip コマンド呼び出して古いログを圧縮。

------

ということで、以下みたいなシェルスクリプトを書いて

#!/bin/sh
# mongod log lotate
killall -SIGUSR1 mongod
# gzip
ls /path/to/mongodb/log/mongodb.log.*[^z] | xargs gzip

毎月1日の0時0分に実行するよう crontab に設定して終わり。

crontab -e
0 0 1 * * /bin/sh /usr/local/mongodb/log_lotate.sh

ただ、これだと.gzファイルがたまっていっちゃうから、適当なタイミングで削除などする。


セックスの話はよそでしとくれ

知り合いがドヤ顔で語るセックスの話、もういい加減うんざり。うんざりなんだよ。