モニタリングとロギング
エッジアプリケーションのモニタリングとロギングを設定し、パフォーマンスの追跡や問題のデバッグを行います
「モニタリングとロギング」はCoddyKit上の無料Edge Computing with Cloudflare Workers & Denoレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはEdge Computing with Cloudflare Workers & Deno学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Edge Computing with Cloudflare Workers & Denoコースには全4レッスンが含まれています。
このレッスンの一部はまだ翻訳されておらず、英語で表示されています。
Why Monitor & Log Edge Apps?
When your applications run at the edge, they're distributed globally. This makes it challenging to know what's happening without good visibility.
Monitoring helps you track performance metrics like request times and error rates across your entire system. Logging gives you detailed records of individual events, like requests or errors, which are crucial for debugging.
Basic Logging: console.log
The simplest way to log information in a Cloudflare Worker is by using console.log(). This works much like logging in a browser or Node.js environment.
Messages sent to console.log() are captured by Cloudflare and can be viewed in your Worker's dashboard or exported using Logpush.
Basic Logging in Action
Try running this Worker. It logs the incoming request's URL to the console. When you test it, check your Worker's logs in the Cloudflare dashboard to see the output.
export default {
async fetch(request, env, ctx) {
console.log("Request received for:", request.url);
return new Response("Hello from basic logging!");
}
};The Need for Structured Logs
While console.log() is easy, plain text logs can be hard to parse and analyze at scale. Imagine sifting through thousands of lines of text!
Structured logging involves outputting logs in a consistent, machine-readable format, like JSON. This makes it much easier for monitoring tools to process and query your logs.
Cloudflare Logpush Overview
Cloudflare's Logpush service allows you to export your Worker logs to various destinations, such as cloud storage (AWS S3, Google Cloud Storage) or analytics platforms.
This is essential for long-term storage, advanced querying, and integrating with your existing monitoring infrastructure.
What to Include in Logs?
Good structured logs contain useful context. Consider including:
- Timestamp: When the event occurred.
- Level: (e.g., INFO, WARN, ERROR) for severity.
- Request ID: To trace a single request through its lifecycle.
- URL & Method: Details of the incoming request.
- Latency: How long the operation took.
- Error Details: Stack traces, error messages.
Structured Logging Example
This Worker logs request details as a JSON string, including a simple latency measurement. This format is easily parsable by log analysis tools.
export default {
async fetch(request, env, ctx) {
const start = Date.now();
const response = new Response("Hello from structured logs!");
const latency = Date.now() - start;
const logEntry = {
timestamp: new Date().toISOString(),
level: "INFO",
url: request.url,
method: request.method,
latencyMs: latency,
requestId: crypto.randomUUID()
};
console.log(JSON.stringify(logEntry));
return response;
}
};Introduction to Edge Metrics
While logs tell you 'what happened,' metrics tell you 'how much' or 'how often.' Metrics are numerical measurements captured over time, used to track the health and performance of your application.
Common metrics include requests per second, error rates, CPU usage, and memory consumption. They are aggregated and visualized in dashboards.
Custom Metrics in Workers
Cloudflare Workers provide built-in analytics, but you can also add custom metrics. One simple way is to use response headers to expose performance data that can be scraped or analyzed.
Here, we add a X-Worker-Latency header. More advanced metrics might use external services or Cloudflare's ctx.waitUntil to send data.
export default {
async fetch(request, env, ctx) {
const start = Date.now();
const response = new Response("Hello from custom metrics!");
const latency = Date.now() - start;
// Add a custom header as a simple metric
response.headers.set("X-Worker-Latency", latency.toString());
console.log(`Request processed in ${latency}ms`);
return response;
}
};Monitoring Tools & Dashboards
Once you have logs and metrics, you need tools to make sense of them. Cloudflare provides basic analytics, but for advanced analysis, you'll integrate with:
- Log Management Systems: Splunk, ELK Stack, DataDog, Sumo Logic.
- Monitoring Platforms: Grafana, Prometheus, New Relic, Dynatrace.
These tools help you visualize trends, set up alerts, and quickly identify issues.
Quick Check on Logging
You are debugging an intermittent error in your Cloudflare Worker. You've been using console.log("Error occurred!") to catch issues.
Which change would MOST improve your ability to diagnose the problem quickly?
Recap: Monitoring & Logging
Great job! In this lesson, you learned about the critical role of monitoring and logging for edge applications.
console.log()is your basic logging tool.- Structured logging (e.g., JSON) provides machine-readable, actionable insights.
- Cloudflare Logpush helps export logs for advanced analysis.
- Metrics track performance trends, often exposed via custom headers or dedicated services.
- Using external monitoring tools can greatly enhance visibility and debugging capabilities.
Keeping an eye on your edge apps ensures they perform optimally!
よくある質問
「モニタリングとロギング」レッスンは無料ですか?
はい。「モニタリングとロギング」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Edge Computing with Cloudflare Workers & Denoコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Edge Computing with Cloudflare Workers & Denoコースには全4レッスンが含まれています。
「モニタリングとロギング」で何を学びますか?
エッジアプリケーションのモニタリングとロギングを設定し、パフォーマンスの追跡や問題のデバッグを行います ブラウザで直接実行するハンズオンコードでEdge Computing with Cloudflare Workers & Denoを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Edge Computing with Cloudflare Workers & Denoを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのEdge Computing with Cloudflare Workers & Denoは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。
「モニタリングとロギング」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このEdge Computing with Cloudflare Workers & Denoレッスンでコードを書いて実行できますか?
はい。すべてのEdge Computing with Cloudflare Workers & Denoレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- キャッシュ戦略
- コールドスタートとウォームアップ
- モニタリングとロギング
- バンドルサイズとコードの最適化