← Cloudflare Pages / pages / functions / plugins
Honeycomb
Honeycomb Pages Plugin automaticky odesílá trasovací data do Honeycomb pro účely analýzy a observability.
Instalace
npm i @cloudflare/pages-plugin-honeycombPoužití
Následující ukázka použití využívá proměnné prostředí, které je třeba nastavit v nastavení vašeho projektu Pages.
import honeycombPlugin from "@cloudflare/pages-plugin-honeycomb";
export const onRequest: PagesFunction<{
HONEYCOMB_API_KEY: string;
HONEYCOMB_DATASET: string;
}> = (context) => {
return honeycombPlugin({
apiKey: context.env.HONEYCOMB_API_KEY,
dataset: context.env.HONEYCOMB_DATASET,
})(context);
};Alternativně můžete svá nastavení napevno zakódovat (u API klíče se to nedoporučuje) následujícím způsobem:
import honeycombPlugin from "@cloudflare/pages-plugin-honeycomb";
export const onRequest = honeycombPlugin({
apiKey: "YOUR_HONEYCOMB_API_KEY",
dataset: "YOUR_HONEYCOMB_DATASET_NAME",
});Tento Plugin vychází z @cloudflare/workers-honeycomb-logger a přijímá stejné možnosti konfigurace ↗.
Zkontrolujte, že jste povolili možnost Automatické rozbalení vnořeného JSON a nastavte Maximum unpacking depth na 5 v nastavení datové sady Honeycomb.
Další kontext
data.honeycomb.tracer má dvě metody pro připojení dalších informací k danému trasování:
data.honeycomb.tracer.logkterá přijímá jediný argument,String.data.honeycomb.tracer.addDatakterá přijímá jediný argument, objekt s libovolnými daty.
Další informace o těchto metodách najdete na @cloudflare/workers-honeycomb-loggerova dokumentace ↗.
Pokud byste chtěli například použít addData metodu pro připojení informací o uživateli:
import type { PluginData } from "@cloudflare/pages-plugin-honeycomb";
export const onRequest: PagesFunction<unknown, any, PluginData> = async ({
data,
next,
request,
}) => {
// Authenticate the user from the request and extract user's email address
const email = await getEmailFromRequest(request);
data.honeycomb.tracer.addData({ email });
return next();
};