Mx.Load document
モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動 モードの切替 ダーク/ライト/自動 トップページへ戻る

2.3.2.2 Go

インストール

ログを取得したいアプリケーションにmxload_goを追加します。

go get github.com/mxload/mxload_go
go get github.com/gwatts/gin-adapter

設定

アプリケーションのエントリーポイント(通常main.go) に以下の内容を追加します。 現在Gingo-chiechoの3つのフレームワークに対応しています。

Gin

import (
    ...
+	mxload "github.com/mxload/mxload_go"
)

func main() {
  r := gin.Default()

+  r.Use(adapter.Wrap(mxload.MiddlewareFunc(
+	&mxload.MxloadConfig{
+		Enabled:      true,
+		CollectorURL: "https://lambda-public.mxload.mx/put-request-log",
+		ProjectID:    YOUR_PROJECT_ID,
+		ServiceKey:   "YOUR_SERVICE_KEY",
+		CustomHeaders: []string{
+			"Authorization",
+		},
+		IgnorePaths: []string{
+			"/ignored",
+		},
+	},
+  )))
    ...
}

go-chi

import (
    ...

+	mxload "github.com/mxload/mxload_go"
)

func main() {
    r := chi.NewRouter()

+	r.Use(mxload.MiddlewareFunc(
+		&mxload.MxloadConfig{
+			Enabled:      true,
+			CollectorURL: "https://lambda-public.mxload.mx/put-request-log",
+			ProjectID:    YOUR_PROJECT_ID,
+			ServiceKey:   "YOUR_SERVICE_KEY",
+			CustomHeaders: []string{
+				"Authorization",
+			},
+			IgnorePaths: []string{
+				"/ignored",
+			},
+		},
+	))

    ....
}

echo

import (
    ...

+	mxload "github.com/mxload/mxload_go"
)

func main() {
	e := echo.New()

+	e.Use(echo.WrapMiddleware(mxload.MiddlewareFunc(
+		&mxload.MxloadConfig{
+			Enabled:      true,
+			CollectorURL: "https://lambda-public.mxload.mx/put-request-log",
+			ProjectID:    YOUR_PROJECT_ID,
+			ServiceKey:   "YOUR_SERVICE_KEY",
+			CustomHeaders: []string{
+				"Authorization",
+			},
+			IgnorePaths: []string{
+				"/ignored",
+			},
+		},
+	)))
    ...
}

設定パラメータ

主な設定パラメータは以下になります。

  • Enabled
    • 送信の有効/無効を切り替えます。デフォルトは false です。
  • collector_url
    • ログを受信するmxloadのURL。https://lambda-public.mxload.mx/put-request-logを指定します。
  • ProjectID
    • 作成したprojectのidを設定します。project_id はホーム・またはプロジェクト詳細から確認できます。
  • ServiceKey
  • CustomHeaders (オプション)
    • ヘッダーの内容を記録する際に必要です。
    • 例: "Content-Type": "application/json" を含めたい場合、CustomHeaders の値に Content-Type を追加します。
  • IgnorePaths (オプション)
    • リクエストパスが IgnorePaths 内にある場合、リクエストログの送信を無視します。
    • /health など、ヘルスチェックのパスを無効にしたい場合に設定します。

Mx.Loadに送信されるログパラメータは以下になります。

  • メソッド
  • リクエストパス
  • リクエストボディ
  • クエリパラメーター
  • リクエストヘッダ
  • クッキー