Documentation Index
Fetch the complete documentation index at: https://mintlify.com/sebamar88/bytekit/llms.txt
Use this file to discover all available pages before exploring further.
Powered by Mintlify
Auto-generate your docs
Performance measurement utilities for tracking execution time
Documentation Index
Fetch the complete documentation index at: https://mintlify.com/sebamar88/bytekit/llms.txt
Use this file to discover all available pages before exploring further.
import { Profiler, withTiming } from "bytekit";
// or
import { Profiler } from "bytekit/profiler";
const profiler = new Profiler();
profiler.start("operation-name");
const elapsed = profiler.end("operation-name");
console.log(`Operation took ${elapsed}ms`);
const result = profiler.measure("operation", () => {
// Your code here
return computeResult();
});
const result = await profiler.measureAsync("fetch-users", async () => {
return await api.get("/users");
});
import { withTiming } from "bytekit";
const fetchUsers = withTiming(async () => {
return await api.get("/users");
}, "fetch-users");
const users = await fetchUsers();
// Logs: "fetch-users completed in 123ms"
import { Profiler, createLogger } from "bytekit";
const profiler = new Profiler();
const logger = createLogger({ namespace: "perf" });
// Manual timing
profiler.start("db-query");
const users = await db.users.findMany();
const elapsed = profiler.end("db-query");
logger.info(`Query took ${elapsed}ms`);
// Automatic timing
const result = await profiler.measureAsync("api-call", async () => {
return await api.get("/data");
});
import { ApiClient, createLogger, Profiler } from "bytekit";
const profiler = new Profiler();
const logger = createLogger({ namespace: "api" });
const api = new ApiClient({
baseUrl: "https://api.example.com",
logger,
interceptors: {
request: (url, init) => {
profiler.start(url);
return [url, init];
},
response: (response) => {
const elapsed = profiler.end(response.url);
logger.info(`Request completed in ${elapsed}ms`, { url: response.url });
return response;
}
}
});