Do measurements one at a time in order
This commit is contained in:
parent
031c65cb09
commit
63687631ea
@ -20,17 +20,14 @@ const client = new Fosscord.Client({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const gatewayMeasure = async (name: string) => {
|
||||||
|
const time = Math.max(client.ws.ping, 0);
|
||||||
|
await savePerf(time, name, null);
|
||||||
|
console.log(`${name} took ${time}ms`);
|
||||||
|
};
|
||||||
|
|
||||||
client.on("ready", () => {
|
client.on("ready", () => {
|
||||||
console.log(`Ready on gateway as ${client.user!.tag}`);
|
console.log(`Ready on gateway as ${client.user!.tag}`);
|
||||||
|
|
||||||
const gatewayMeasure = async (name: string) => {
|
|
||||||
const time = Math.max(client.ws.ping, 0);
|
|
||||||
await savePerf(time, name, null);
|
|
||||||
console.log(`${name} took ${time}ms`);
|
|
||||||
setTimeout(gatewayMeasure, parseInt(process.env.MEASURE_INTERVAL as string), name);
|
|
||||||
};
|
|
||||||
|
|
||||||
gatewayMeasure("websocketPing")
|
|
||||||
});
|
});
|
||||||
|
|
||||||
client.on("error", (error) => {
|
client.on("error", (error) => {
|
||||||
@ -73,8 +70,6 @@ const measureApi = async (name: string, path: string, body?: object) => {
|
|||||||
console.log(`${name} took ${time}ms ${(error ? "with error" : "")}`, error ?? "");
|
console.log(`${name} took ${time}ms ${(error ? "with error" : "")}`, error ?? "");
|
||||||
|
|
||||||
await savePerf(time, name, error?.message ?? null);
|
await savePerf(time, name, error?.message ?? null);
|
||||||
|
|
||||||
setTimeout(measureApi, parseInt(process.env.MEASURE_INTERVAL as string), name, path, body);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const app = async () => {
|
const app = async () => {
|
||||||
@ -84,8 +79,15 @@ const app = async () => {
|
|||||||
|
|
||||||
console.log(`Monitoring performance for instance at ${new URL(instance.api).hostname}`);
|
console.log(`Monitoring performance for instance at ${new URL(instance.api).hostname}`);
|
||||||
|
|
||||||
measureApi("ping", `${instance.api}/ping`);
|
const doMeasurements = async () => {
|
||||||
measureApi("users/@me", `${instance.api}/users/@me`);
|
await measureApi("ping", `${instance.api}/ping`);
|
||||||
|
await measureApi("users/@me", `${instance.api}/users/@me`);
|
||||||
|
await gatewayMeasure("websocketPing");
|
||||||
|
|
||||||
|
setTimeout(doMeasurements, parseInt(process.env.MEASURE_INTERVAL as string));
|
||||||
|
};
|
||||||
|
|
||||||
|
doMeasurements();
|
||||||
};
|
};
|
||||||
|
|
||||||
app();
|
app();
|
Loading…
x
Reference in New Issue
Block a user