タグ

ブックマーク / tech.classi.jp (31)

  • コスト削減成功!Amazon Auroraの監査ログをS3に保存する仕組みを構築した話 - Classi開発者ブログ

    こんにちは。プロダクト部Growth部でエンジニアをしている id:ruru8net です。 前回はこちらの記事を書かせていただきました。 tech.classi.jp 今日は前述したSRE留学中にやったことの中の「Amazon Auroraの監査ログをCloudWatch Logsを経由せずS3に保存する」を紹介したいと思います。 前提 前掲の記事にもある通り、弊社のAWSにかかっているコストを調査したところCloudWatch Logsの特にAmazon RDSの監査ログの保存にコストがかかっていることがわかりました。今回は弊社で最も使用しているAmazon AuroraMySQLのみを対象として、監査ログをCloudWatch Logsを経由せずS3に保存する仕組みを作成しました。 作成した仕組み こちらのオープンソースの仕組みを参考に構築、またLambdaのソースを使いました。

    コスト削減成功!Amazon Auroraの監査ログをS3に保存する仕組みを構築した話 - Classi開発者ブログ
  • 「Terraform活用大全 - IaCの今。」に登壇してきました - Classi開発者ブログ

    こんにちは、 Classi でソフトウェアエンジニアやってます koki です。 Findy さま主催の「Terraform活用大全 - IaCの今。 Lunch LT」に「Terraform に test コマンドがやってきた」というタイトルで登壇してきました。 Togetter まとめ イベントのアーカイブ動画は Findy にログインするとイベントページから閲覧できます。 登壇のきっかけ SNS 経由で Findy さまからお声がけいただきました。 よく ZennTerraform に関する記事を書いていたのを見ていただけたようです。 ちょうど最近リリースされたTerraform の test コマンドをキャッチアップしたいと思っていたところだったので、自分の学びのためにも登壇を快諾しました。 これが俗に言う登壇駆動学習ですね。 発表内容 Terraform v1.6 で新しく

    「Terraform活用大全 - IaCの今。」に登壇してきました - Classi開発者ブログ
  • Lambda Extensionと自家版OpenTelemetry Collector - Classi開発者ブログ

    こんにちは・こんばんは・おはようございます、エンジニアのid:aerealです。 以前、 実践OpenTelemetry - Classi開発者ブログ で紹介したようにOpenTelemetryを監視フレームワークとして導入しています。 前回の記事ではECSサービスで動くGoで書かれたWebアプリケーションへ導入しましたが、今回はAWS Lambdaの関数からOpenTelemetryを用いてDatadogにトレースを送るための試行錯誤について紹介します。 LambdaからDatadogにトレースを送りたい AWS Lambdaは小〜中程度のタスクを大量に実行することに向いたFaaSです。 汎用性・柔軟性という点ではECSなどのコンテナワークロードと比べると実行環境などに設けられた制約がやや多いですが、その代わりに最適化された実行環境で実行されるのでうまくワークロードと噛み合えばまさに安い

    Lambda Extensionと自家版OpenTelemetry Collector - Classi開発者ブログ
  • ライブラリのアップデートを自動化した仕組みの紹介 - Classi開発者ブログ

    こんにちは!学習動画・Webテストの開発を行っています エンジニアの daichi (id:kudoa) です。 この記事では、最近チームで導入したライブラリアップデートを自動化した仕組みとその経緯について紹介します。 なぜ自動化しようと思ったか サービスを開発するだけではなく、日々の運用も必要です。 その運用業務の1つとして、ライブラリのアップデートがあります。 これはサービスを運用する上では大切なことではありますが、日々ライブラリアップデートのPRをさばき続けるのも大変です。 その時間をできるだけ減らし、その分空いた時間をユーザーへの価値提供や将来の投資に充てるために、今回の自動化の仕組みを作成しました。 この辺りの話は以前勉強会でLTしたことがありますので、興味があればご覧ください。 作ったもの 前置きは長くなりましたが、凝ったものを作ったわけではありません。 作成したものはライブラ

    ライブラリのアップデートを自動化した仕組みの紹介 - Classi開発者ブログ
  • 実践OpenTelemetry - Classi開発者ブログ

    こんにちは・こんばんは・おはようございます、エンジニアのid:aerealです。 この記事では筆者が開発に参加しているサービスの監視フレームワークをOpenTelemetryへ移行した際の体験を紹介します。 OpenTelemetryとは OpenTelemetry is an Observability framework and toolkit designed to create and manage telemetry data such as traces, metrics, and logs. What is OpenTelemetry? サイトの説明にある通り分散トレースやメトリクス、ログなどの指標を扱う監視フレームワークです。 OpenTracingやOpenCensusなどを継承・統合したプロジェクトと言うと合点がいく方も多いのではないでしょうか。 OpenTelemet

    実践OpenTelemetry - Classi開発者ブログ
  • GitHub Actions と Release Please を使ったアプリケーションのリリース自動化 - Classi開発者ブログ

    GitHub Actions と Release Please を使ったアプリケーションのリリース自動化 こんにちは @lacolaco です。最近は、先日プレスリリースが出された「学習トレーニング」機能を裏で支えているコンテンツ管理システム(以下内部CMS)の開発に携わっています。 corp.classi.jp この記事では、内部CMSのフロントエンドAngular アプリケーション)のリリースフローを自動化している仕組みを紹介します。現在のリリースフローの全体像は次の図のようになっています。この中にある Release Please というのが、今回特に紹介したいツールです。いくつか日語でのブログ記事などもあるので特にマイナーというわけではないと思いますが、多くの場合はライブラリのリリースに使われています。一方、アプリケーションのリリースで使っているケースはあまり発信されてないよう

    GitHub Actions と Release Please を使ったアプリケーションのリリース自動化 - Classi開発者ブログ
  • 中立的なGraphQLスキーマの管理 - Classi開発者ブログ

    こんにちは、id:aerealです。 今回はGraphQLのスキーマ管理を工夫している点について紹介します。 背景 対象となるアプリケーションは先日プレスリリースが出された学習トレーニング機能を裏で支えているコンテンツ管理システム (以下、内部CMS) で、エンドユーザ向けを含む複数のサービスから呼び出されます。またAngularで書かれたWeb UIを備えます。 内部CMSを開発するチーム内には主にサーバサイドを担当するメンバーと、主にクライアントサイドを担当するメンバーとがおり、どちらもGraphQLを用いた開発経験があります。 この内部CMSはスクラッチから開発を始めており、目指すリリース予定日に対してやることは山積みなのでうまくタスクを分担したい状況にありました。 時と場合によってはクライアントサイドのチームの手が空いていたりあるいは逆になったり、状況は目まぐるしく変わります。 で

    中立的なGraphQLスキーマの管理 - Classi開発者ブログ
  • GitHub運用委員の紹介 - Classi開発者ブログ

    みなさま、おはこんハロチャオ〜。開発支援部所属のid:aerealです。 この記事ではClassiにおけるGitHub運用委員という役割とその仕事について紹介します。 また、この記事はClassi developers Advent Calendar 2022 - Adventarの2日目の記事としてお届けします。 GitHub運用委員とは Classiでは開発のコラボレーションツールとしてGitHubを活用しています。 Webサービスで事業を提供する企業にとって最も重要なソフトウェア資産といえるソースコードをホストするサービスですから不適切に扱えば重大な損害を被ることになりますし、最近はGitHub ActionsというCIサービスも利用できますから一歩間違えれば番環境で稼働動しているサービスに大きな影響を与えかねません。 当社には情シスやサイバーセキュリティ推進部といった部署が存在し

    GitHub運用委員の紹介 - Classi開発者ブログ
    fumikony
    fumikony 2022/12/03
    良いですね
  • Classi のエンジニア3名が RubyKaigi 2022 に参加しました - Classi開発者ブログ

    はじめに こんにちは!開発部所属のエンジニアの id:kiryuanzu です。 9月8日(木) 〜 9月10日(土) にRubyKaigi 2022が開催されました。 今回弊社ではシルバースポンサーとして協賛し、3名のエンジニアがオフラインで RubyKaigi に3日間通して参加しました。記事では参加メンバーによる感想レポートをお送りします。 参加する前 筆者自身は学生時代に何度かオフライン参加を経験したのですが、同行した2名の新卒エンジニアは今回が初参加となりました。行く前にできるだけ RubyKaigi がどんなものか知っておこうということで、開催1ヶ月前から igaigaさんによるプログラム解説を実施していただき、発表される内容の予習を行いました。 他にも、津の気になる飲店をみんなで探して事前に予約したり、会ってみたい他社のエンジニアさんや OSS開発者の方について話すとい

    Classi のエンジニア3名が RubyKaigi 2022 に参加しました - Classi開発者ブログ
    fumikony
    fumikony 2022/10/01
  • UNIX 系システムのプロセスに関する社内勉強会に参加しました - Classi開発者ブログ

    こんにちは。新卒 1 年目エンジニアのすずまさです。 先日、弊社 VPoT の id:nkgt_chkonk が執筆した process-book の勉強会を修了しました。 process-book は *nix系のシステムにおけるプロセスやシグナルなどについて説明することを目的に書かれました。「プロセスとかよくわかってないからちゃんと知りたいな」みたいなひとたちが想定読者です。 参加する前は UNIX の基礎的な知識も乏しかった私ですが、学びがたくさんあり毎回楽しく参加できたので紹介します。 開催の経緯 Slack でシェルスクリプトの話題で盛り上がったのをきっかけに、プロセスモデルの重要性が話に挙がり、流れでその日のうちに「process-book 読もう会」が誕生しました。 進め方は下記の通りです。 日時: 毎週木曜日 15:00〜15:30 週に 1 章ペースで進める 初めに各章ご

    UNIX 系システムのプロセスに関する社内勉強会に参加しました - Classi開発者ブログ
  • データ基盤の品質向上への取り組み - Classi開発者ブログ

    こんにちは、データエンジニアの石井です。 先日公開した記事「社内向けのデータ基盤から集計結果をReverse ETLしてサービスに組み込んだ話」で、ダッシュボード機能のリリースにより、Classiのデータ基盤が「社内用データ基盤」から「ユーザー影響あるシステムの一部」へ進化した話をしました。「ユーザー影響あるシステムの一部」への進化に伴い、データ基盤の品質担保は必要不可欠です。今回は、データ基盤の品質向上に取り組んだKANTプロジェクトについてご紹介します。 KANTプロジェクト 背景・課題 Classiのデータ基盤がユーザー影響あるシステムの一部になる前、つまり社内用データ基盤だった頃には以下のような課題がありました。 データ基盤の状態把握 マルチクラウドにおけるデータ基盤全体の状態把握ができていなかった データ基盤の実行状態(SUCCESS, FAIL, RUNNINGなど)の把握が、

    データ基盤の品質向上への取り組み - Classi開発者ブログ
  • チームトポロジーを参考に新組織の編成を考えた話 - Classi開発者ブログ

    みなさん、こんにちは。開発部で部長をしている徹郎(id:tetsuro-ito)です。 Classiでは今年度より組織のあり方を少し見直し、チームトポロジーの考え方も導入してみたので、今回はその過程の話を紹介します。 Classiのこれまでの組織 Classiでは、2020年に起こしてしまったセキュリティインシデントおよび高負荷障害の対策を全社でとるべく、組織のあり方を変えていました。 7月からは、動作しているすべてのコードに対して、チームの責任範囲を明確にしました。また、技術的な課題をそれぞれのチームの責任において改善するような動き方にも変えました。やるべきことが明確(「再建プロジェクト」と「セキュリティ強化」が最優先)で、かつ、チームが主体となって意思決定する形にしたことで、現在は各チームが担当する機能やリポジトリをしっかりとメンテナンスしていく、そんな体制になってきたと思います。

    チームトポロジーを参考に新組織の編成を考えた話 - Classi開発者ブログ
  • Content Security Policy のレポートを収集するためにやったこと - Classi開発者ブログ

    はじめに こんにちは、開発部所属エンジニアの id:kiryuanzu です。 現在、Classi ではサービスのセキュリティリスクをできる限りなくすために Content Security Policy を導入して脆弱性を検知する仕組みの導入を進めています。 記事ではこの仕組みを導入する上でどのような手順が必要であり、どのような箇所で苦戦するポイントがあったかについて紹介していきます。 筆者は今まで CSP対応に携わったことがなかったのですが、導入段階の時点で想定していたよりも様々な知識が必要なことがわかり、記事にしたいと思いました。 もし数ヶ月前の自分と同じように初めてCSP対応に関わる人の一助となれば幸いです。 Content Security Policy (通称: CSP) って何? Content Security Policy とは、HTTPヘッダの種類の1つであり、クロ

    Content Security Policy のレポートを収集するためにやったこと - Classi開発者ブログ
  • Classiの技術選定に対するスタンス - Classi開発者ブログ

    VPoTの丸山です。日はClassiがいまのところどういうスタンスで技術選定に臨んでいるのかについてお話しします。これは「いまのところ」のスタンスであり、未来永劫このようなスタンスでいくかどうかというのは定かではありませんが、考え方のひとつとして参考になれば幸いです。 技術選定にハードリミットはかけない 結論から言うと、Classiでは「この技術スタックを必ず使ってください」という制限はかけていませんし、かけるつもりもいまのところありません。その理由は大きくふたつあります。 ひとつは、組織全体の視点でみた時に、技術スタックに関する健全な新陳代謝の機会を奪わないため、もうひとつは、メンバーレベルの視点でみても、複数の技術に触れる機会が成長につながるからです。 新陳代謝を行う機会を奪わない、というのは、どういうことでしょうか。 ひとつの技術スタックを極めていくことにも良い点はあります。ノウハ

    Classiの技術選定に対するスタンス - Classi開発者ブログ
  • Datadogで深夜バッチの失敗アラートを営業時間に受け取る方法 - Classi開発者ブログ

    深夜の定期バッチの監視 Webサービスのオフピーク時に重たい処理を実行させるというのは一般的なプラクティスといえます。 特に深夜〜早朝は多くのサービスでバッチ処理を実行させているのではないでしょうか。 Webサービスだけではなく、当然バッチ処理も監視して失敗したらそれを発見し対処したいです。 しかし、失敗を発見しても即座にユーザ影響がないので対応は後でも良いという場合、素朴に監視ルールを作るとバッチが失敗した深夜・早朝にアラートが発報されることになります。 発報されたアラートを見て「これは今すぐに対応してなくても良いな」と判断するのであれば、それは狼少年アラートといえるのではないでしょうか。 悪貨が良貨を駆逐すると言われるように、狼少年アラートがはびこれば良貨のアラートもいずれ無視されるようになってしまうことは容易に想像できます。 Datadogの timeshift 関数でアラートの発報

    Datadogで深夜バッチの失敗アラートを営業時間に受け取る方法 - Classi開発者ブログ
  • 開発メンバーの保守運用スキルを上げるため実施している朝当番制度の紹介 - Classi開発者ブログ

    こんにちは、開発支援部基盤インフラチームの kenryooo です。 Classiでは過去の高負荷によるアクセス障害での反省を踏まえ、エンジニア向けに保守運用スキルを高める施策として、朝当番という制度を運用しています。今回はその紹介をします。 目的 朝当番制度は、下記を目的に運用しています。 Classiのピークタイム(毎朝8:00 - 9:30)に問題が起きた場合、社内向けにスムーズな情報連携を行う サービス品質の継続的な改善 パフォーマンスや監視内容に異常があった場合や、依存している外部接続システムやSaaSのメンテナンス情報などを担当チームへ共有する 担当エンジニアの育成 Classiシステムの全体像の理解 担当外のアプリケーション(リポジトリ)の理解 システム監視の入門(Datadog) インシデントハンドリングの入門 背景と課題 朝当番制度は、下記の背景と課題感からスタートしてい

    開発メンバーの保守運用スキルを上げるため実施している朝当番制度の紹介 - Classi開発者ブログ
  • Amazon EventBridge(CloudWatch Events)で動かしているバッチをDatadogで監視する仕組みを構築した話 - Classi開発者ブログ

    開発部 認証連携チームでエンジニアをしている、id:ruru8net です。 これはClassi developers Advent Calendar 2021の9日目の記事です。 昨日の記事はこちらです。 Hardening 2021 Active Fault 参加レポート - 桐生あんずです 以前のClassi Advent Calender 2019では新卒が入社半年で社内サービスをリリースしてエンジニア楽しいってなったお話を書かせていただきましたが、あれから2年の間に業務の中で様々な経験をし、さらに知識やスキルを身につけていくことができました。 今日はその中でも自分が担当しているサービスの、バッチ監視の仕組みを考えたので紹介させてください。 背景 担当チームでは毎日深夜2時にDBからデータを削除するバッチを動かしています。 他にも社内では様々なバッチが動いていますが、これらを監視

    Amazon EventBridge(CloudWatch Events)で動かしているバッチをDatadogで監視する仕組みを構築した話 - Classi開発者ブログ
  • リモートワークのための質問力向上研修を実施しました - Classi開発者ブログ

    この記事は Classi developers Advent Calendar 2021 の 7日目の記事です。 こんにちは。顧客サポート基盤チーム兼、技術戦略室にてエンジニアをしています、中島です。 みなさんは、日々仕事をする上で必須である「誰かに質問をする」という行為について、自信を持って適切に行うことはできているでしょうか? 先月弊社では外部講師である、株式会社フィッシャーデータのあんちべさん をお招きし、質問力向上のための研修を実施しました。今回はこの研修を実施するに至った背景、研修内容を少しお見せするのと、社内の反響をお伝えします。 質問力を向上しよう!と至った背景 弊社は2020年2月頃よりリモートワークへの移行を行い、1年半以上が経過しました。リモートワークのお困りごととして一般的にもよく聞かれる、コミュニケーションについての課題を見聞きするようになってきました。 (ちなみに

    リモートワークのための質問力向上研修を実施しました - Classi開発者ブログ
  • マネージャーからエンジニアに役割を変えた話 - Classi開発者ブログ

    はじめに すっかり寒くなりましたが、皆さまいかがお過ごしでしょうか。Classiの佐々木(@sasata299)です。 タイトルにもありますが、9月まで担っていた開発部長*1を離れて、10月からエンジニアに役割を変えました。この記事では、どんなことを思って、どんな風に考えて進めてきたのかをお伝えできたらと思っています。 最近やっていたこと 開発部として80名を超える大きな組織となり、最近は主にこの辺りに関わってきました。 開発部として大切にしたいことを決定 CTOの責務を、VPoTとVPoEに分解*2 アラート対応の体制化や手当検討 既存の部から役割を分けて分割する形で、開発支援部の新設 評価体制の変更 余談ですが、こういった組織課題に対して、当初はVPoTである丸山(id:nkgt_chkonk)、稲富(@laco2net)、佐々木という3人体制でスクラムで進めていました。実際やっ

    マネージャーからエンジニアに役割を変えた話 - Classi開発者ブログ
  • Hardening Drivers Conference 2021でCSIRTの受援力についてパネルディスカッションをしました - Classi開発者ブログ

    こんにちは、サイバーセキュリティ推進部の野溝(@nomizooone)です。普段はClassiサービスの脆弱性診断や顧客対応などを担当しています。 先日、Hardening Projectにより開催された/dev/hardening – Hardening Drivers Conference 2021 のセッション「CSIRTの受援力」にて、私を含むClassiサイバーセキュリティ推進部の3名がパネラーとしてお話をさせていただきました。 「Hardening Project」(ハードニングプロジェクト)とはウェブサイトの安全性を追求する技術の啓蒙と人材の育成や、技術の社会的認知の向上による健全なネット社会への進歩に貢献することを目的としたセキュリティ界隈の皆さんにはおなじみのコミュニティです。 インシデント情報公開が登壇のきっかけに Classiは昨年度、大規模な個人情報漏えい事件をおこ

    Hardening Drivers Conference 2021でCSIRTの受援力についてパネルディスカッションをしました - Classi開発者ブログ