Monthly Archives: 2月 2015

phpで月末最終営業日(土日、祝日、会社が定める休日を除いた月末の営業日)を取得

By | 2015/02/24 9:08 PM

会社の月末の最終営業日にアラート通知を行う、といったことをしたかったので作りました。

祝日リストは配列で定義するなりyaml等で設定ファイルを作るなりDBで管理するなりGoogleカレンダーAPIで取得するなりして配列として読み込みます。

jQueryUI のタブを順番を任意に入れ替える

By | 2015/02/23 7:54 PM

jQuery UI って本当に便利です。特にタブは本当に重宝してます。
でも、これってタブの順番を入れ替えたり、それをcookieに保存できたら、なお便利だと思いませんか。
そこで以下のようなスクリプトを書いてみました。

タブの id と cookie 保存名は tabs にしてあります。
適宜変更してください。

いやー、jQueryって本当にいいものですね。

lsyncdを複数起動する

By | 2015/02/12 4:31 PM

lsyncdを複数起動するtips。対象はCentOS 6以前です。

/etc/lsyncd.conf には複数設定を記載することが出来ますがサービスプロセスを分けてしまいたいことがあります。
CentOS 5および6ではepelにlsyncdのパッケージが用意されており簡単にインストールすることができますが、デフォルトの起動スクリプト(/etc/init.d/lsyncd)ではkillprocやstatusの引数にpidファイル等の引数が与えられておらず、そのままコピーしても複数起動時に問題が発生し正しく動作しません。

/etc/init.d/lsyncdをスクリプトを一部修正することで複数起動しても正しく動作するようになります。
以下に修正例を記載します。

元のファイルからの修正箇所は下記のとおりです。

変更点を簡単に説明するとkillprocやstatusといった/etc/init.d/functionsで定義されているファンクションでpidファイルやlockファイルを指定するように書き換えています。
又、コピーの際にpidファイル、confファイル、sysconfigファイルなどの書き換えを行わなくてもすむように定数を変数に置き換えています。

使用方法

/etc/init.d/lsyncd を上記の例の通り修正した上で、起動スクリプトをコピーします。
下記の例では lsyncd_2 という名前でコピーしています。

新しい設定ファイル /etc/lsyncd_2.conf を編集します。

必要に応じて自動起動設定を行ってください。