selmertsxの素振り日記

ひたすら日々の素振り内容を書き続けるだけの日記

TypeScript

SAM Localを利用してLocalで動かしているAWS Lambda からdynamodb-localにアクセスする方法

この記事に書かれていること SAM CLIの環境構築方法 SAM CLIを使ってLocalでLambdaを起動する方法 SAM CLIを使ってLocalで起動しているLambdaから、Localで用意したDynamoDB containerにアクセスする方法 これらの処理を僕が趣味で作っているAWS Lambdaを例…

TypeScriptで書かれているCloud FunctionsからCloud PubSubのREST APIを叩く

この記事に書いてあること この記事には、 TypeScriptで書かれているCloud FunctionsからCloud PubSubのAPIを叩く方法 が書かれています。それだけのことなのですが、現在GCPから公式で提供されているライブラリで実現するにはとても大変でした。 僕が把握し…

SlackのBlock Kitをjsxの記法で書ける jsx-slackを試してみた

TL;DR 僕は個人的に datadog_slack_reporterというものを作成して、datadogで監視しているサービスの台数をslackに通知しています Slackのメッセージ作成部分を、SlackのBlock Kitをjsxの方式で記述できる jsx-slack に置き換えてみました 面倒なjsonの作成…

GCPでCloud Functionsを作る際の個人的なTIPS

この記事は技術同人誌Advent Calendar 2018の19日目の記事です。 こんにちは。 @selmertsxです。主にRailsのサーバーサイドエンジニアをやってます。 技術同人誌 Advent Calendarということで、今年の11月にNextPublishing様から出版させて頂いたAmazon Web …

(TypeScriptで書かれてWebpackでビルドされた) CloudFunctionsのエラー通知をわかりやすくしてみた

やりたいこと stack driver error reportのエラーの内容をもう少しわかりやすくしたい。 やること GitHub - prisma/serverless-plugin-typescript: Serverless plugin for zero-config Typescript support ここを参考に node-sourcemap-supportを導入した。 …

Cloud FunctionsとCloud Schedulerを利用してDatadogで監視しているホスト数を通知させてみた

作ったもの 指定された期間のDatadogの監視台数について、最小,最大,合計(ホスト数×時間)を算出してSlackに通知してくれるCloudFunctionsを作成しました。そのCloudFunctionsはCloud Pub/Subで実行され、Cloud SchedulerはそのCloud Pub/SubのTopicを一日一…

G Suite Domain-Wide Delegationを使ってG SuiteのGroupを作成する

TL;DR googleapisを使って、G Suiteの Groupを作成できるようにした 公式のドキュメントにはnodejsでの実装方法が無かったので自分で実装した よってこれが最適な方法かは分からない G Suiteの特権管理者の権限が付与されている必要がある https://developer…

CloudFunctionsをServerless Framework & TypeScriptの環境で試してみる

やったこと Serverless Frameworkを使って CloudFunctionを動かしてみました。 試した内容は下記の通りです。 TypeScriptで書けるようにしてみる serverless.ymlの設定で環境変数を利用する 日本のリージョンにDeployする 実際に利用したコード https://gith…

Azure ADのGraphAPIを利用する

この資料を読んでできるようになること Azure ADのディレクトリをAPIを利用して操作できるようになる 手順 Appを登録する AccessTokenを取得する GraphAPIを叩く Appを登録する Azure Active Directoryを選択 App Registrationsを選択 nameとsign-on URLを設…

JestにおけるbeforeAllの実行タイミングについて

TL:DR Jestにおいて、describe内外にbeforeAllを複数用意した場合の評価タイミングを確認した。その結果、beforeAllは上から順番に実行されていることが分かった。 モチベーション beforeAllを上書き指定できれば、綺麗に書けるテストを書いていた。 そのた…

TypeScriptにおいて継承先のclassのプロパティはオブジェクトの生成時には利用できない

概要 表題のとおり。継承先のプロパティは、オブジェクトの生成時には利用できなかった。 このあたりの仕組みが気になる。やり方があれば、ご紹介頂けると幸いです! 確認のコード class A { protected hoge = 3; constructor () { console.log(this.hoge); …

TypeScriptをVSCodeでデバックする

概要 TypeScriptのデバック効率を上げたい フロントエンドのコードでは無いのでchromeのデバッグツールが使えない VSCodeのデバックツールを試してみた 5分くらいで設定できた VSCodeでのデバック画面 こんな感じの画面でデバックができます。 設定方法 VSCo…

TypeScriptで書かれた AWS Lambdaのコードで AWS SAM Localを使う

やりたいこと TypeScript で書かれている AWS Lambda のコードを AWS SAM Local で動かしたい TypeScriptのコードとbuild後のコードは別ディレクトリで保持したい AWS SAM LocalのREADMEではそこの説明が無いので、自分でなんとか動く方法を模索する必要があ…