また今夜も深夜テストだよ。とほほ・・・

昨日の深夜にサーバ接続テストをやったんだけど、23:30から準備を始めているはずなのに、全然先方からの連絡無し。
お客さんとこに入った業者が、俺の作ったサーバに向けてデータを投げてくるテストなんだけど、深夜1時になっても 2時になっても連絡無し。
で、2:30頃、やっと「データ流してるんで、届いてるか見てもらえますか」との連絡が。

まあ、こういうテストでは、開始時間がずれてしまうのはよくあることなので、仏のような心で俺は対応したよ。

で、テスト結果なんだけど、一部のデータだけうまいことヘッダ部とデータ部を分離できなくてエラーになってる。
あらら・・・と思って、ログの検証とか、データの解析とかしてたら、「4時までにテスト環境を本番環境に戻さないといけないので・・・」と 3:30にはテスト終了。翌日(つまり今夜)、再度テストを行うことになった。

いやあ、こっちの検証時間が 1時間しかないというのはどうなの?(^^;

まあ、原因は俺のコーディングミスだったんだけど(笑)

バイナリデータを正規表現を使って分割してるんだけど、例えば、

if ($data =~ /^(.{2})(.{2})\x00(.{740}).*$/) {
$key1 = $1;
$key2 = $2;
$body = $3;
}

みたいな処理で、760バイトあるデータなのに、$body になにもセットされないという状況。
ま、一眠りしてソース見たらすぐに間違いに気づいたんだけど、この時は深夜に延々待たされて、頭がぼーっとしてたんでね、すぐにミスに気づかなかった。

Perl 書ける人、わかる?

そう、s オプションが抜けてるんだね(^^;
s オプションは「ワイルドカードのドット( . )が改行にもマッチするようにする」オプションね。
このオプション付けないと、例えば LF(\x0A)にマッチングしてくれないんだよね(^^;
だから改行コードと同じコードが混ざることが想定されるバイナリデータのマッチングじゃ、必ず s オプションは付けないといかんよね。

ああ、しょうもないミスで今夜も寝不足確定だ(^^;
つーか、昨夜(というか今朝未明か)、もう少しうちの調査時間くれれば気づいたと思うのに・・・

トラックバック(0)

このブログ記事を参照しているブログ一覧: また今夜も深夜テストだよ。とほほ・・・

このブログ記事に対するトラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/2006

コメントする

このブログ記事について

このページは、shinodaが2012年2月29日 15:17に書いたブログ記事です。

ひとつ前のブログ記事は「Gmail のコピペがやっとまともになったな(笑)」です。

次のブログ記事は「GOGOやまぐちのチキンカツ弁当美味し」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。


月別 アーカイブ

電気ウナギ的○○ mobile ver.

携帯版「電気ウナギ的○○」はこちら