You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
三行で FireLens を使うことで ECS で稼働するアプリケーションのログ転送を簡単に実装できる しかし、ドキュメントに記載されている設定例をそのまま利用しただけでは実はログの取りこぼしがあった ログの取りこぼしを防ぐためにコンテナ間の依存関係とHealthcheckの設定を行った FireLens とは FireLens を簡単に言うと、「ECS のタスク定義の記述だけで Fluent Bit / Fluentd を使ったログ転送用のサイドカーコンテナが利用できる機能」でしょうか。 FireLens という個別のサービスやソフトウェアが存在するわけでは無いようです。 詳細は以下を参照ください。 症状 私が関わったとあるサービスでは ECS を使ってアプリケーションを稼働させていて、アプリケーションのログは FireLens により Fluent Bit を使ってログ転送を行っていま
構造化ログのプラクティスをあちこちで調べていたら、logfmtを推奨する記事を見つけたので調べてみました。 先に結論を言うと、JSON linesを使っておくのが良さそうです。 logfmt について logfmtとはスペース区切りで key=value を並べたフォーマットです。文字列にはクォートとエスケープによってスペースや改行を含められます。 at=info method=GET path=/ host=mutelight.org fwd="124.133.52.161" dyno=web.2 connect=4ms service=8ms status=200 bytes=1653 (logfmt から引用) あちこちで logfmt のリファレンスとして紹介されているのはこの記事です。 https://brandur.org/logfmt 発明されたのはどこか分かりませんが、流行
はじめに 2023年8月9日(日本の場合)Go1.21がリリースされました🎉。Go1.21ではさまざまな変更点や追加機能が加わります。その中でもGo標準ライブラリに導入される構造化ロギングパッケージlog/slog(以下、slog)を楽しみにしている方は多いのではないでしょうか? 本稿では、slogを実際に触りつつ、機能の解説をしていきます。 TL;DR 本稿の概要をスライドにもまとめているので、ご参考にして下さい。 従来のlogパッケージについて slogの説明に入る前に、Go標準のlogパッケージについて簡単に紹介する。logパッケージを用いると、 io.Writer インターフェースを実装する任意の型にログメッセージを書き込むことができる。しかし以下のような制限があった。 ログレベルをサポートしていない ログレベルはほとんどのログパッケージの定番機能の一つだが、logパッケージには
はじめに 皆さんのログに対する理解はどんなものでしょうか?仕組みから設計方法まで完璧に理解しているエンジニアもいれば、なんとなく使用しているエンジニアも多いことでしょう。 ログとは、システムに着いてエラーや障害の発生、利用者による操作や設定の変更、外部との通信などを時系列に記録したものです。ログに関する理解を深めることで、複雑なシステム開発や運用が可能となります。また、AWS、Azure、GCPなどのクラウドサービスを利用している場合はシステムの開発が可能になるだけでなく、経費削減に繋がる可能性も考えられます。 本記事では、ログの基本を押さえるためにその設計方法について解説します。少しでも自信がない方は、ご一読ください。 ログを出力する理由は? ログの基本や、ログの設計について解説する前にそもそもログを出力する理由を押さえましょう。大きく4つの理由が考えられます。 ・問題が発生した時に調査
はじめに アプリケーションログは、アプリケーションの動作状況をログファイルに記録するプロセスです。アプリケーションよって、この動作状況は1つ以上のファイルに記録することが多いです。このログファイルは、セキュリティとパフォーマンスの分析の実行、アプリの問題のトラブルシューティングなどに役立ちます。この記事では、ログ、ログの種類およびAWSのCloudwatLogsサービスについて説明したいと思います。 各個人によって好きなAWSサービスがそれぞれだと思います。これが正解という訳ではありませんが、参考にしてただければと思います。 対象者 AWSでログの記録に興味がある方。 AWSでワークロードを運用している担当者。 ログレベル ログレベルについて皆さんご存じだと思いますが、主に3種類のログがあります。 レベル 説明
こんにちは、freee Developers Advent Calendar 2022 8日目の記事です。 PSIRTでblue teamとして活動している eiji です。 サービスやシステムのsecurityを確保したいとき、まず、最初にやらなければならないことはなんでしょう? FirewallやIPSのようなsecurity sensorを配置することが頭に浮かぶかもしれませんが、それよりも先にやっておかなければならないことがあります。 それは、logを取ることです。 logがなければ、攻撃や異常を検知できませんし、検知できなければ、サービスやシステムを守るための行動をとることができません。 では、全部のlogを取るのか? といわれると、答えは乱暴に言うとYesなのです。でも、全てのlogを単純に保存したとして、多くの人はそこからsecurityを確保したと言える状況に至る道筋を思い
*1 こんにちは、サーバーサイドエンジニアの @kimihiro_n です。 今回はSentryというエラー集約管理システムをGo言語で扱う場合の知見を共有したいと思います。 Sentry とは Sentryはエラーの集約管理を行うためのシステムで、作成したアプリケーション内で発生したエラーを一括で収集して見やすく管理することができます。 sentry.io 類似のエラーをグルーピングして発生頻度を確認したり、エラーの発生状況をSlackのようなチャットツールに通知してくれたりします。 予期しないエラーが発生したとき、生のログを見なくてもSlackやWebのUIで確認出来るのはとても便利です。 バックエンドからフロントエンドまで幅広い言語に対応しているためシステムのエラーを一括で集約が可能です。 JX通信社ではエラー管理ツールとしてSentryを広く利用しており100を超えるシステムが登録
本検証利用したFargateのCloudFormationテンプレート、FireLensのDockerfileなどは以下に置いてあります。タスクロールなどは必要に応じて確認してください。 Fargate一式 FireLensのDockerfile 設定ファイル 以下のFluent Bitの設定ファイルを作成しました。 extra.conf [SERVICE] Flush 1 Grace 30 # ELBヘルスチェックログ除外 [FILTER] Name grep Match *-firelens-* Exclude log ^(?=.*ELB-HealthChecker\/2\.0).*$ # エラーログにタグ付け [FILTER] Name rewrite_tag Match *-firelens-* Rule $log (emerg|alert|crit|error|\s4\d{2}\
Enabling SRE best practices: new contextual traces in Cloud Logging The need for relevant and contextual telemetry data to support online services has grown in the last decade as businesses undergo digital transformation. These data are typically the difference between proactively remediating application performance issues or costly service downtime. Distributed tracing is a key capability for imp
またまたドキュメントをながめていたところ、待望のアップデートを見つけたのでシェアします。 AWS WAFのWebACLトラフィックログをCloudwatch LogsまたはS3に直接出力することが可能になりました! AWS WAFのWebACLトラフィックログ 従来は以下記事のようにKinesis Data Firehoseを介してCloudWatch LogsまたはS3に出力する必要がありました。 今回のアップデートでAWS WAFから直接CloudWatch Logs、S3に出力可能となりましたので控えめに言って最高のアップデートですね! 注意点 CloudWatch Logsロググループ名およびS3バケット名はaws-waf-logs-から始まる名前であること Kinesis Data Firehoseも配信ストリーム名でも同じ制約がありましたが、CloudWatch Logs、S3
こんにちは!コンサル部のinomaso(@inomasosan)です。 ECS FargateでFireLensからCloudWatch LogsやKinesis Data Firehoseへのログ出力を、Terraformでコード化したので紹介します。 検証にあたり、弊社の以下ブログを参考にしました。 そもそもFireLensって何? FireLensは、複数のAWSサービスやAWSパートナーネットワーク(Datadog等)にログ出力することができます。 ECSタスク定義でサイドカーとして起動し、他のコンテナからログドライバーとして使用します。 コンテナイメージにはFluentdとFluent Bitを選択可能です。 今回の検証では、リソース使用率が低く、ログルータに推奨されているFluent Bitを使用します。 2021/11/6時点でFluent Bitでは、以下のAWSサービスに
本記事について Lokiについてまったく知識のない状態の人にとって、1からキャッチアップしていくのは とても大変なことです。 特にLokiはマイクロサービスで構成されているため、何を知るべきなのかの全体像が見えにくいと思っています。 そのため、Lokiをまったく知らない状態から実際に運用検証を開始するために必要なインプットを体系的にまとめました。 具体的には下記の項目で整理します。 Lokiの機能 Lokiを構成するアーキテクチャ Lokiを構成するプロセス Lokiのモニタリング Lokiでのログのリテンション管理 Lokiのデプロイ Lokiでのデータキャッシュ Lokiのベストプラクティス ※前提として、Prometheusについての基本的な知識があれば本記事についてもすぐに理解できるかと思います。 1. Lokiの機能 Grafana Lokiとは? Lokiは3大監視項目である、
Solutions All end-to-end solutions Opinionated solutions that help you get there easier and faster
システムログは悪意のある第三者の攻撃や不正を監査するのに役立ちますが、ログそのものを改ざんされてしまっては意味がありません。Googleが開発する「Trillian」は、そんなログの改ざんをハッシュ木を用いて困難にした、オープンソースのログ基盤です。 An open-source append only ledger | Trillian https://transparency.dev/ Trillianは「ウェブサイト証明書の透明性」の確保を目指すGoogle主導のエコシステム「Certificate Transparency」が支援するプロジェクトのひとつです。Certificate Transparencyには、記事作成時点でApple、Google、Facebookなどが協力しています。 第三者の攻撃や内部不正の監査において重要な役割を持つログは、ただ保存するだけでなく高い改ざん
はじめに この記事では、GCP のマネージドサービス(Google App Engine[1]/Cloud Run/Cloud Functions/GKE)から Cloud Logging に良い感じの構造化ログ(理想の構造化ログ)を出力する方法について紹介します。 良い感じのログの例 前提条件 この記事で紹介する構造化ログの実装は基本的に以下の仕様にそって実装しています。重要な仕様なので興味のある方は一度読んでみることをおすすめします。 構造化ペイロードの特殊フィールド 用語の解説 本編に入る前に、この記事で使われるログ出力まわりの用語をまとめておきます。以下の用語については前置きなく使いますのでよろしくお願いします。 構造化ログ[2] プレインテキストではなく、JSON等のデータ形式で出力されたログのこと GCPのCloud Logging(旧Stackdriver Logging)で
JPCERT/CCは、Internet Week 2016 ~ 2019にて「インシデント対応ハンズオン」と題し、標的型攻撃を受けた際のセキュリティインシデント(以下、インシデント)調査手法に関するハンズオンを行ってきました。受講者の方から高く評価していただいていた「インシデント対応ハンズオン」ですが、公開の要望が多かったため、この度、GitHub上でコンテンツを公開することとしました。コンテンツは以下のURLから確認できます。 Log Analysis Training https://jpcertcc.github.io/log-analysis-training 本コンテンツは実際の標的型攻撃の事例をもとに作成しており、攻撃者のネットワーク侵入時にどのような痕跡がログに残るか、また、侵入の痕跡を発見するためにどのようなログ取得設定が必要か、をシナリオに沿って理解できる内容になっていま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く