【SRE】ユーザー体験向上のためのWeb指標:Core Web Vitals

はじめに 最近は、開発チームに対してコミットすることが多く SRE業務にも少し手を出し始めている。 そのときに調べたことをメモする。 Core Web Vitals Core Web Vitals とはGoogleがWebサイトの健全性を示す指標として重視するもので、以下の指標がありま…

【AWS】AWS CLIでテンプレートがわからないときに役立つコマンド

AWS

はじめに AWSコンソールで画面上でポチポチやるのは手間がかかるのとヒューマンエラーが発生してしまうことがあるため できることならAWS CLIでやっていきたいと思うことがあります。 その際に --cli-input-json というオプションがありますが 実際にどのよ…

【WAF】AWS WAFのCloudWatch Logsの名称は決まっているため気をつける

はじめに 業務でAWS WAFを使うことになりBot Controlを使うなどして 悪意あるアクセスでないか制御することになりました。 CloudWatch Metricsで集計しようとしたところ、まずは「CloudWatch Logs」にログを溜めないといけないのでそのやり方でハマったので…

【Spark】ローカルでSparkをインストールしてみる

はじめに 半年ぐらいの業務でAWS Glueを使ったETLをやっていました。 しかし、Sparkの知識が足りず「Pysparkの関数ってどうやって使うの?」ということが多々あったため Pysparkをローカルで動作できる環境を作ってみました。 環境 macOS Monterey 前提条件 …

【Glue】Glueを使い始めて知った単語などまとめ

はじめに 最近、サーバーサイドだけでなくデータ基盤も作る機会がありました。 サービスの成熟度や規模を検討した結果 AWS Glue(以下、Glue) を採用しました。 そこでGlueを名前だけ知っていた筆者が本番で使えるまでになり覚えた単語などをメモします。 …

【Glue】【Glue Studio】なぜクローラーを使わずにデータカタログが作れるのか調べてみた

はじめに 普段の業務はバックエンドエンジニアなのだが、最近になって データ基盤 を作るようになりました。 データ基盤 と言うと大規模なものだと思われがちですが、新規サービスの基盤なので大きくはありません。 なので、まずは データを効率良く見える化…

【PHP】【Laravel】laravel/duskで「php artisan dusk」 を実行すると「session not created」が出るときの対処法

はじめに Docker上でLaravelのE2Eテストをするときに出たエラーがあったので対処法があるのでメモ書き。 前提条件 Docker for Macで実行されていること Docker上でPHP8.0系, Laravel8系が動作すること 以下に検証用のリポジトリがあるので構成を参考にしても…

【AWS】AWSのメルマガを購読して$25クレジットコードをもらおう

AWS

はじめに ここ数ヶ月で「これは結構お得だな」と思ったのでブログで共有します。 最近は会社の福利厚生で一定額までAWS費用を負担してくれるところもありますがすべての会社がそうではありません。 しかし、少しでもAWSを無料で試す方法はないのか?と考えて…

【Miro】Miro Liteがリリースされたので試してみた

はじめに コロナの影響でリモートワークが始まり自宅にホワイトボードがなく困っていました。 ホワイトボードの代わりとなるものを探していたところ見つけたのが Miro でした。 最初はフリープランで使っていたのですが、柔軟に使えるようにしたいと思い 「C…

【Ruby】【Clean Architecture】オープン・クローズの原則をRubyで書いてみた

はじめに 最近、クリーンアーキテクチャの話が話題に上がっており 「理解したつもりでもコードで示さないと理解したことにならない」 という気持ちがあったので簡単ではあるが、Rubyで書いてみました。 環境 macOS Mojave rbenv Ruby 2.7.1 前提条件 ruby コ…

【iOS】【2段階認証】iOSの2段階認証を「Google Authenticator」から「Microsoft Authenticator」にした

はじめに 新しいiPhoneが発売されました。 早速、移行しようとしたしたのですが、単純にやってしまうと移行しなくて積む可能性があったので念の為確認していました。 その結果、以下が1番気をつけなければいけないようです。 モバイルSuica LINE 二段階認証…

【CloudFront】【Lambda@Edge】オリジンレスポンスでリダイレクト処理を入れる方法

はじめに AWSでSPA(シングルページアプリケーション)のインフラ部分を作っているときに 要件として 「トップページやその配下のディレクトリにもページがある。ただし、ないディレクトリが指定されたらリダイレクトする」 という話をもらいました。 それま…

【Datadog】【Rails】Railsのログを出力するとき「日付とプロセスID、リクエストID」を出力されないようにする

はじめに Webサービスの開発でDatadogのLog Managementを使うときの小ネタ。 lograge というライブラリを使い、Datadog Logsにログを転送していたのですが 標準ログ+JSONという形になってしまいLogsで自動で解析してもらえなくなってしまった。 なので、標…

【AWS】Amazon QuickSightでS3へアクセスできないときの対処法

はじめに AppFlowを使ってSlackの発言回数を可視化させるために Amazon QuickSightを使ってみることにした。 その際にハマったところをメモする。 前提条件 AppFlowを使ってS3にデータが保存されていること Athenaでデータが取得できること 原因 Amazon S3へ…

【Ruby】RubyMineでrbenvでインストールしたRubyを指定する

はじめに RubyMine(以下、IDE) をJetBrains経由で新しくダウンロードして IDEの設定を設定していたところRubyのバージョンを指定する必要がありました。 筆者は rbenv でRubyをインストールしていたため指定方法に 手間取ったので記録として残しておきます…

【Rails】ActiveModelSerializersのログを出力しないようにする

はじめに Webサービスを開発していて、気づいたことがあったのでメモ 環境 macOS Sierra Docker(docker-compose) Ruby 2.6.3 Ruby on Rails 5.2.2 active_model_serializers 0.10.9 前提条件 active_model_serializers を使って何かしらレスポンスが返される…

【Redash】AWSのAMIを使いアップグレードをする

はじめに 業務で Redash を導入することになり 公式ドキュメント のAMIを使ったのですが バージョンが古かったので、公式ドキュメントのアップグレード方法を見ながら 最新のRedashにする手順をメモしておきます。 前提条件 ap-northeast-1 の ami-0c7d9b740…

【MySQL】ユーザー追加のやり方

はじめに BIツール用に select だけ実行できるユーザーを作りたいということがあると思います。 ただ、ユーザーを作るコマンドを毎回忘れてしまうのでメモすることにしました。 前提条件 MySQL5.7(Amazon Aurora for MySQL) DBが設定済みでログインできる…

【Kubernetes】Kubernetesで設定している環境変数の調べ方

はじめに Kubernetes(以下、k8s)の環境変数は etcd という仕組みで管理されています。 etcd は分散KVS(Key Value System)で、1つ設定すれば他のPodでも 同じように環境変数を読むことができます。 etcd 単体で機能として確立されているようですが 今回は…

【Kubernetes】Kubernetes 用語やコマンドの調査メモ

はじめに 業務で Kubernetes を使った環境構築が必要となったため 調べたことをメモっていたら記事にできる量になっていたので ブログに掲載します。 環境 macOS Sierra Google Cloud Platform この環境で確認したものもあるため 前提条件 Docker, docker-co…

【Rails】ローカル環境の開発でサブドメインがある場合「localhost」ではなく「lvh.me」を使う

はじめに Webサービスを開発していて、初めて知ったのでメモ。 環境 macOS Sierra Docker(docker-compose) Ruby 2.5.0 Ruby on Rails 5.1.4 前提条件 Rails Engineで管理画面を作成していて、以下のように記述してあること。 mount Admin::Engine => '/', co…

【勉強会】VP of Engineering Meetup by CA #3 に参加しました

前回に引き続き参加してきました。 自分もプログラマなので、プログラマ関連の話はすぐに聞けますが マネジメント周りの話はなかなかなく、他社の事例を聞けるため 勢い良く参加しました。 ※メモはスライドに書かれている内容を書かず なるべく登壇者が話し…

【AWS】【Let's Encrypt】Let's Encryptを使っての証明書発行をAWS Certificate Managerにして、お名前.comに設定する

はじめに 勉強がてらSPAで作成したWebサービスを作っており ドメインはお名前.comで取得、証明書を作れるLet's Encryptを使っていました。 とても便利で1年半ぐらいは使わせてもらっていました。 しかし、最近になり証明書更新のコマンドが動かなり 3ヶ月に1…

【勉強会】VP of Engineering Meetup by CA #2 に参加しました

CTOというのは何となくわかるものですが VP of Engineering(以下、VPoE)とはどういう役割で何をやるのか? ということがわからないままでした。 そして、今の自分がやっていること、やりたいことはVPoEなのではないか? という考えもあり参加することにな…

【雑記】今年の振り返り

まだ2017年が続くんじゃないか?と思うぐらい仕事をしていますが 今日でもう終わりと思うと昨年以上にあっという間の1年でした。 さて、今年を振り返ります。 今年の振り返り 部署異動 今年が始まり数ヶ月経ったころに部署を異動しました。 転職とは違いまし…

【Ruby】define_methodについて調べました

はじめに せっかく調べたのに忘れてしまうため、メモを残しておく。 今回は、ライブラリの挙動を確認していたところ define_methodが書かれており、復習も兼ねて調べました。 環境 max OS X Sierra Ruby 2.4.1 前提条件 irbかPryが動作すること やり方 defin…

【アジャイル】アジャイル(スクラム)をやり始めて5ヶ月ほど経ったので振り返る

はじめに 本エントリーは以下の続きです。 fujiyasu.hatenablog.com fujiyasu.hatenablog.com 前回のエントリーから今まであったこと プロダクトオーナー(以下、PO)が交代 POが認定POを取得 スクラムマスター(以下、SM)が交代 SMが認定SMを取得 チームが…

【Ruby】文字列リテラルのダブルクォートとシングルクォートの違いについて

はじめに せっかく調べたのに忘れてしまうため、メモを残しておく。 今回は、メソッドの引数に関することで 文字列リテラルのダブルクォートとシングルクォートの違いを調べました。 環境 max OS X Sierra Ruby 2.4.1 前提条件 irbかPryが動作すること やり…

【Ruby】キーワード引数

はじめに せっかく調べたのに忘れてしまうため、メモを残しておく。 今回は、メソッドの引数に関することで キーワード引数を調べました。 環境 max OS X Sierra Ruby 2.3.0 前提条件 irbかPryが動作すること やり方 キーワード引数(デフォルト値あり) キ…

【Ruby】可変長引数と配列の展開

はじめに せっかく調べたのに忘れてしまうため、メモを残しておく。 今回は、メソッドの引数に関することで 可変長引数と配列の展開を調べました。 環境 max OS X Sierra Ruby 2.3.0 前提条件 irbかPryが動作すること やり方 可変長引数 可変長引数のサンプ…