cloud functionsはtriggerとしてcloud pub/subを使用できます. cloud pub/subにmessageを入れると指定したcloud functionsが起動してきてmessageを受け取れます.
ここまでは問題ないのですが, messageを受け取って処理をしたあと, そのmessageって削除すると思うんですよ. 普通.

通常pub/subに対する処理としてsubscriberはmessageにackを返すことで処理完了とします. messageは下記のようなcallback()に渡されてそこで処理されます. message.ack() を呼べばいいわけです.

def callback(message):
    body = message.data.decode()
    print(body)
    message.ack()


Continue reading

通常zabbix-serverに対してデータをpushするときはzabbix-senderを使用します. しかし環境によってはzabbix-senderをインストール出来ないこともあります.
そういった場合には直接クライアントがzabbix-serverとtcp接続を行い通信してもよいのですが, 今回はクライアント側の実装をシンプルにしたかったのでhttpでやり取りできるようにproxy-serverの参考実装を作ってみました. クライアントからhttpでjsonデータを送り, それを受け取ってzabbix-serverへtcp接続して受け渡すようにしています.


Continue reading

Author's picture

youyo

I’m cloud engineer and software engineer.
This is a daily memorandum.

Cloud engineer
Software engineer

Sendai in Japan