だ。ログ。

開発とかスノボとかやきうとか。

転落する順位と崩壊

ベイスターズがどんどんと負けを重ねている。
気づけば最下位、去年のこの時期のイケイケドンドンだった時期からは考えられない程である。
ハマスタの週末開催に毎回のように顔を出すが、ライトスタンドの野次も日に日に厳しさを増すばかり。
やはりその原因は「打てない」事ではないかと思う。

打てない

昨シーズンあれだけ打てていたチームと言う印象だが、実はビックイニングと言うよりは中軸がしっかりと2,3点を取る事が徹底できていた。と言う印象が強い。
スワローズ小川投手からの梶谷選手の同点満塁弾、オリックス吉田投手からの戸柱選手の満塁弾など「ここぞ」と言う場面での大量特典もあるにはある。
ただ、やはり大量得点につながっていたのはランナーが溜まった所での一撃があったから。

チームとしての作戦がファーストストライクをしっかり振っていく。と言う事を徹底していて選手はその指示を遂行しているのであろうが
ノーアウト2塁で初球ポップフライ等の相手投手がじりじりと疲弊するシーンが見られない。
8月に入り、12日のタイガース戦以外で言えば投手が打たれ打線は点として繋がりがなく、ライトスタンドからはチャンステーマすら歌うシーンが作れない。
そんな日々が続いている。(できても押せ押せ横浜くらい)

不調と言う言葉で片付けてしまえばそれまでかもしれない。
切り込み隊長の桑原選手、怪我明けのロペス選手、大黒柱の桑原選手と精細を欠いている。
ここにきて今年ブレイクした神里選手、ここぞでの便りの梶谷選手も怪我で離脱と「怪我」が相次いでしまっている事も一つの要因かもしれない。

ただ、プレーを見ていて思う事はイケイケドンドンでない現状、チームとしては平常であると認識しているのかもしれないが
細かなほつれに気付かないそれまでの「当たり前」を見れるベテランが居ない。

カープ:新井選手
ジャイアンツ:阿部選手
スワローズ:青木選手
ドラゴンズ:荒木選手
タイガース:福留選手

タイガースのみ生え抜きではないが、基本的にはチームにベテランが居る。その選手が睨みを効かせているのか愛されキャラなのかそれぞれある。
ベイスターズにはこの「ベテラン」が現状では居ない。

雄洋選手、荒波選手もベテランと呼ぶにはまだ一声足りない。
2016年までは、番長こと三浦投手が居て野手には下園選手、その前は多村選手や金城選手がいた。
特に自分が感じていたのは、グリエル選手が来日した2014年、それまでスマートでクールなキャラだと思っていた多村選手がホームランの出迎えですすんで明るい表情で出迎えていた。
今チームに自分が出来る最大限の「なにか」を担っていた。しかし現状ではこの「なにか」が出来て、チームの小さなほつれを現場で感じられる選手が足りていないと感じられる。

この辺は主軸の選手におんぶに抱っこになってしまっている、いわゆる「主軸」以外の選手
柴田選手や乙坂選手、関根選手などの若い力がどれだけ伸びるか。と言う事が今年の浮沈の鍵になっていたのかもしれないが現状では長浦との行ったり来たり。
スタンドからも「なんで○○代打じゃねーんだ!」等の代打への不満の声が多々上がり始めている。
それだけ「この人ならなんとか」と言う期待感も薄れてしまう程のたんぱくな打撃、ここに来て雄洋選手のフォアボールの重要性が目立つようになってきたのはそれだけ「塁に出る」と言う事がスタンドから見ても「嬉しい」と感じてしまっている。

これは崩壊なのか?

投壊、打壊、チーム全体が「誰か」を待っている。
いわゆる「救世主」と呼ばれる存在。投手はここ数年本当に新人が素晴らしい働きをしてくれている。
即戦力で入ってきたドラフト上位の左腕が輝く。。が今年は東投手が孤軍奮闘しているものの、今永投手、石田投手、濱口投手の3左腕が崩壊
特に濱口投手は11日の土曜日にマウンドを降りる際に涙を見せる程の自信喪失をしてしまっている。

投手は結局のところ、対策・研究がすすんでしまった事がひとつ。
ふたつめには投手としての自信を早い時期に攻略されて打ち砕かれてしまったこと。
最後に捕手のリードの攻略も考えられる。
ちょっと前のプロ野球ニュースで解説だった谷繁氏が嶺井選手の山﨑投手のリードに対して

一度ぴょんと飛んでから真ん中にミットを構えるとストレート
何もせずコースにミットを差し出すとツーシーム

と映像を交えて解説したが、そのとおりだった。
特にリード面で現状は伊藤選手と嶺井選手が交互に使われているが、また打たれるのではないだろうかと言う弱気が出てしまっているのか、かわそうとして痛打され。
またボールボールと先行しフォアボールからの失点が増えているように思える。

結局のところ、勝負どころで攻める退くの押し引きではなく、かわす事が当たり前になってきてしまっている。
トレードで移籍した高城選手がウィーランド投手をリードした際のヒーローインタビューで「彼は自分が考えている次のボールを要求してくれるから自信を持って投げれた」
投手の女房役として大切なピッチャーとの信頼感が如実に出ている部分だ。
どちらかと言うと嶺井選手も伊藤選手も気が強く、俺の要求する所に来い!と言うグイグイと引っ張るタイプに感じられる。
高城選手は投手の趣向や考え方から、この辺にこの辺に。と投手がイライラする事を極力さけていた。
特に専属でコンビを組んでいた山口投手や濱口投手はコントロールの振れ幅が大きい。だからこそコースに入らないと、いいよいいよアバウトで。と言うジェスチャーをしていた事を思い出す。
確かにきっちりコーナーを突いてズバリの見逃し三振を取れれば勢いになる。
しかしアウトはアウト、1アウトを取るのに10球15球と要し根負けしてフォアボールを出すと言う事が現状では多々見られる。
土日のハマスタだと大半1回の表で20球前後要して「ああ、また長い回は厳しいのか」と覚悟する。
そしてピッチャーはなるべく長い回をと責任を感じてしまいペース配分を無駄に行い下位打線に打たれ。。。

と言う妄想をしてしまう。

はっきり言ってここからの浮上はもう望めに気がしている。
中畑監督が前半戦首位から大失速した交流戦を彷彿とさせる状況だ。
いま必要な事は、主力以外の選手たちの奮起だと個人的には思う。
誰かが抜けたら、誰かが不調だから。
代わりの選手ではない、出た選手が主役になる。その勢いがなくただただ負けが続いている。

今年はハマスタに吹く秋風はここ数年よりも冷たく乾いた風が早い時期に吹くのだろう。

googlemap apiのSSL利用で怒られた

googlemapを利用したサービスで相当昔から有る骨董品を動かさねばならなくなり
下手にサーバーを構築する時間もなかったのでローカルに構築した際に出たエラー

requests to this api must be over ssl

何かって言うとSSL対応してないって事が問題でhttpsでリクエストするならしてねってな事らしい。
と言う事でソースコードを見てみる

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&language=ja"></script>

今回の場合ソースコードでgooglemapを呼んでいるが、別にリクエストする本体でもどこでも良いがhttp => httpsに明示的に変えるとエラーは回避された。
この辺を昔のリファレンスコピペでやっていると、後々問題はでてきそうだなと。

Laravel5.4のセッションの保持時間の変更

ログインに関連する話で、Laravelで発行したSESSIONの生存時間を変更する。ってな作業が来る。

/config/session.php

# 32行目あたり
'lifetime' => 60,

分単位でもっているので値を変更する。
ちなみに

'expire_on_close' => false,

この設定値は文言通り、ブラウザを閉じたらセッションを破棄する設定となっている。

Hangouts ChatにPHPでメッセージを投稿するのが簡単だった

結局の所、メールだとメーリングリストを作って在職中の人を入れて退職者を出してってのがすごく面倒。
誰に何を送ったか。という事が受動的で、その管理者がいなくなると誰も管理できなくなる。

EC-CUBEに限った事ではないが、管理系ツールを作る時に「メールで飛んで」と言う単語が出る。
それはそれで必要だし、メール文化から脱却出来ない所も多々ある。

もう枯れた技術ではあるが、これをslackなりgoogleなりchatworkなりにメッセージとして飛ばしてリマインダとするとメールよりも管理が簡略化出来る。
と言う事で、google chatのwebhookを使ってみようかと思う。

1. チャットルームの作成

左メニューのユーザー、チャットルーム、botをクリックし「チャットルームを作成」
f:id:rider_dice:20180726151537p:plain
これで、投稿する部屋が作成される。

2. webhookの用意。

ヘッダメニュー部分のメンバーの部分をクリックし「webhookを設定」をクリック。
f:id:rider_dice:20180726151553p:plain
名前は投稿する名前、適当でいい。
アバターのURLも有ればネタを仕込めばいいし、なければないでよい。
f:id:rider_dice:20180726151607p:plain
保存を行った後に出てくるWebhookのURLをコピって置く。
例) https://chat.googleapis.com/v1/spaces/hogehogehoge/fugafugafuga.....
f:id:rider_dice:20180726151617p:plain

3. ソースコードを書く

$url = 'コピったWebhookのURL';
$data = json_encode([
    'text' => '送りたいメッセージ'
], JSON_UNESCAPED_UNICODE);

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
]);
$response = curl_exec($curl);
var_dump($response);
curl_close($curl);

んで、プログラムを実行する。
f:id:rider_dice:20180726151631p:plain
こんだけ。

多分障壁はWebhookの概念がITに詳しくないとハードルになりそうな気がする。
あとは安定稼働性はどうかって所かと。
ECだと受注が有った場合にチャットに投稿が入れば担当者がメールとかではなく、通知が来るので気付きやすくなる。
それと、本当にお客さんとの連絡はメールで社内運用に関してをチャットにするだけでもメッセージ量が大きく軽減しやすい。

とは言え24365と言う事は保証がない。
なので、落ちてる時もある。それは手運用でなんとかしろ。ってな事で社内の意識統一をすれば良い。

apacheサーバーの現在切られているバーチャルホストを確認する

特に開発環境とかで多いのが、無数に切られたバーチャルホストファイルの残骸。
要不要問わず各人がワラワラとファイルを作ってしまうと収集がつかなくなる。
まだ誰がどう使っていたかと言う交通整理が出来ていれば問題は少ないが、ドメイン側だけ抜いてあってコンフィグはおいてあると言う事も。

利用している開発環境で何がどういう形が存在するかって言う事を調べる為には以下

$ httpd -S
VirtualHost configration:
*:80		hoge.local (/etc/httpd/conf.d/hoge.local.conf)
*:80		fuga.local (/etc/httpd/conf.d/fuga.local.conf)
		・
		・
		・
		・

このようにリストでドメインが出てくる。
まずこのサーバーに向いているドメインを調べるよりもサーバー側で受けているドメインを見ればある程度の察しはつく。
こういうの、Dockerで解決するのが本当は正しいんだろうけど、ロートルおじさんではまず人力。

nginxでphp sessionの落とし穴

nginxでサーバーを構築していてphp-fpmにてphpの動作を確認。
とりあえず、これでいいかな。とDB管理ツールであるphpMyAdminを入れるとセッションが使えませんってなエラーが出て動かない。

初期構築時にphp-fpmのコンフィグファイルのユーザーを明示的に指定した際のユーザー

/etc/php-fpm.d/www.conf

; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
; RPM: apache Choosed to be able to access some dir as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx

この辺をいじってphp実行のユーザーがnginxになっている。
そしてセッションのディレクトリを確認する

/var/lib/php/session apache apache

これが問題、ユーザーがnginxになっていない。

chown nginx /session

これでエラーが解消された。

CentOS7の時刻合わせ

どうやらntpではダメなようである。
今まではntpdで時刻をあわせていたのだが、7からはchronyを使うのが主流らしい。

vagrant + virtualboxを利用するとなぜかドイツ語でデータが入ってしまう。
最初にOSのtimezoneを変更する。

$ timedatectl set-timezone Asia/Tokyo

と言う事でまず、chronyをインストールし、起動する。

$ yum install chrony.x86_64

突っ込んだら設定ファイルをいじる
/etc/chrony.conf

$ vim chrony.conf
##最下部に追記する
server ntp.nict.jp iburst

# Ignore stratum in source selection.
stratumweight 0

自動起動設定して起動する

$ systemctl enable chronyd
$ systemctl start chronyd
$ systemctl status chronyd