[Trouble][BLOG]正直参った。

またトラブルっすか・・・

今回遭遇したトラブル、それは「ブログが見えなくなる」というもので、CDN経由ですと502ステータスが返却され、ローカル接続だと404ステータスが返却するというものでした。発生していたエラーはNGINXで発生していて、以下のようなエラーが出ました。

[error] 116602#0: *21 failed to run set_by_lua*: set_by_lua:2: attempt to index field 'ctx' (a nil value)
stack traceback:
        set_by_lua:2: in function <set_by_lua:1>, client: 152.195.151.45, server: www.bluecore.net, request: "GET /archives/tag/azure HTTP/1.1", host: "www.bluecore.net"

[error] 116602#0: *21 failed to run header_filter_by_lua*: header_filter_by_lua:1: attempt to index field 'ctx' (a nil value)
stack traceback:
        header_filter_by_lua:1: in function <header_filter_by_lua:1>, client: 152.195.151.45, server: www.bluecore.net, request: "GET /archives/tag/azure HTTP/1.1", host: "www.bluecore.net"

ここで出力されるIPアドレスはCDN側のアドレスですが、これがなんとまぁ8/16 14:15前後あたりで発生しており、翌日8:00まで気づかないままで居りました。そういえばWeb関連は全く監視してなかったなーと言うのを思い出しまして、はい。

NGINXは正常に動作してるし、PHP-FPM7含めて一通りのコンポーネントは動作しているようでした。

Read more

[BLOG] KUSANAGIのアップグレード

Tips記事というわけではありません、あしからず

どちらかというとポエム的な要素が多いような気がしますので、純粋な技術ネタでないことはあらかじめご了承ください。
さて、どうやら私が使っておりますKUSANAGIですが、なんとBusiness/Premiumエディションという上位エディションが存在し、加えて個人用途であれば「無償」らしーじゃないですか(ただし、支払い処理的に個人情報とクレカの登録が必要っぽい)。

そこで、そもそもBusiness/Premiumエディションって何じゃそら?と言うことで調べてみることにしました。

Read more

[Azure][Monitoring] カスタムフィールド

AzureでKUSANAGIのアクセスログやエラーログを解析したい

AzureにはAzure Monitorと言うツールが有り、その要素の中にLogAnalyticsと言うツールが有るのですが、意外とこれが使いこなすのが難しい。KQLというクエリ言語を使わないとログの抽出ができないし、ダッシュボードの作成も基本的には手作りというのは、なかなか他社監視製品だとない文化であり、とっつきにくいなぁという感じがしています。

今回学んだのはカスタムフィールドという機能でして、所謂フィールドを細分化する機能です。
例えば今回カスタムログ機能を使用して、Linux VMから抽出したログはこんな風になっています。

カスタムログからデータを抽出したところ

実はログの中で重要なメッセージは全部RawDataというフィールドに一括で蓄えられています。でも実際統計を取りたかったりする場合、その中のフィールドを細分化しないと色々辛いんですね。

Read more

[Tech] KUSANAGIのWAF運用

LearningMode時に必要となるnxtoolの実装手順 以下URLが参考になると思います。(中国語サイトだけど、コマンド実行の流れはわかる) https://www.jianshu.com/p/d9f89e7c18ae 留意点としては以下のようなものがあるす。 Naxsiと連携するElasticsearchはバージョン5までしか想定されていません。 悲しいかな、Naxsiの連携モジュールであるNXAPIはPythonが使用するElasticsearch用ライブラリが、5であることを前提に書いていて、それに対して実際に実装されるライブラリはVersion7前提となっています。よって、一部Pythonスクリプトのヘッダ宣言を変更する必要があります。 fielddataの属性はどうやら触らなくても良さそうなんです。 とりあえず最初はsampleデータを取り込ませたほうが良さそうです。各データ型宣言が意図したとおりになり、より安全にデータ投入がしやすくなりそうです。

[Tech] CDNが難しい・・・・

FrontDoorが思い通りに動かない

当初このブログサイトを再建させたさい、以下のような構成を取ろうとしたのですが、うまくいきませんでした。

FrontDoorを使おうとしたときの構成

この時、クライアントからFrontDoorに対してはHTTPS、FrontDoorからKUSANAGIに対してはHTTPで通信する構成にしてたのですが、何故かCSSが崩れてしまう。FrontDoorからKUSANAGIに対してHTTPSで通信するよう構成すると、何故か今度は到達しない。

Read more

PAGE TOP