yamamanx

growing hard days

*

kintoneで設定したスケジュールにあわせてlambda(python)からSQSへメッセージを送る

   


EC2の起動停止をそろそろ手動でやるのも疲れてきそうなのと、やはり停止するのを忘れてしまってもったいないので。

SQSを挟むほどの規模でもないのですが、慣れておきたかったのでSQSを使ってみています。
今回はSQSへメッセージを送るところまでを記載しています。
SQSからメッセージを受信してEC2の起動停止をlambdaで実行して結果をslackへ通知するのは次回のブログに書きます。

start_stop_ec2_kintone_sqs

kintoneでアプリ作成

kintone-ec2-config

こんな項目を持ったアプリを作成します。

kintone_ec2

フォームはこんな感じです。

APIトークンを発行します

kintone-api-token

アプリの設定で詳細設定を展開して[APIトークン]をクリックします。

kintone-api-token-2

APIトークンの生成をします。
今回はデータを読むだけなのでアクセス権は閲覧のみにします。

kintone-api-token-3

保存した後、[設定完了]をクリックします。
※これをしないと生成したAPIトークンが反映しません。

ターミナルなどで確認します。

YOUR_TOKEN, YOUR_DOMAINは適宜変更します。

データのレスポンスが返ってくればOKです。

Terminalで見づらいのでPOSTMANで見ます。

祝日対応

やりながら祝日も対応しなければと思い、上記のkintoneの曜日に「祝」を足しました。

なんかいいAPIないかなーと探したのですが見つけられなかったのでGoogleカレンダーAPIを使いました。

これをlambdaファンクションと同じディレクトリに格納しておきます。

kintoneからデータ取得してSQSへエンキューするlambda

GitHubはこちらです。

kintoneのレコードから起動対象か停止対象かをチェックします。

起動停止対象の場合辞書型のメッセージを配列に格納します。

SQSにメッセージをエンキューします。

実行してます。

キューにメッセージが送信出来た事が確認出来ました。

SQS_Management_Console

次回はSQSからメッセージを受信してEC2を停止起動してslackへ通知します。

@yamamanx
開発ベンダー5年、ユーザ企業システム部門通算8年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

 - AWS , , ,

ad

ad

Message

メールアドレスが公開されることはありません。

  関連記事

kintone webhookからAWS API Gateway – Lambdaを実行しレコードの値を渡す

2017年2月のアップデートでkintoneにWebhook機能がリリースされま …

EC2 Amazon LinuxのNginx+RDS MySQLにレンタルWebサーバーからWordPressを移設する(手順整理版)

ブログサイト(WordPress)をレンタルWebサーバーからAWSに移設する事 …

Amzon Linux のApacheでRedmineとWordPressをバーチャルホストで共存する

EC2とRDSを節約しようと思いまして、Redmineを動かしてるとこに検証用W …

Amazon LinuxにRedmine をインストールする(手順整理版)

Amazon LinuxにRedmineをインストールしました手順を記載します。 …

TwilioからのリクエストをAPI Gateway+LambdaでTwimlを返して処理する

Twilioで着信した時のリクエスト先としてTwimlをWebサーバやS3で用意 …

「関西AWSスタートアップ勉強会」に行ってきました

第2回 関西スタートアップAWS勉強会に行ってきました。 akippa 拠点数コ …

Route53でドメインを新規取得してDNSレコードを設定する

Elastic IPをAWSで発行しているのですから、DNSの設定も同じようにマ …

AWSのAmazon LinuxにGitマスターサーバをインストールしてRedmineリポジトリブラウザで見る

Amazon LinuxにGitをインストールする Gitをインストールして自動 …

AWS EC2 Amazon Linuxにmauticをインストールする(Sendgrid, Nginx, MySQL on RDS)

mauticをAmazon LinuxとNginx,MySQL on RDSにイ …

slackのbotにWikipediaを調べてもらう(Python on AWS Lambda + API Gateway)

slackのbotに少しでも役に立ってもらおうと、Wikipediaを調べてもら …