diff --git a/src/lib/server/db.ts b/src/lib/server/db.ts index c2a140d..1f5ac8d 100644 --- a/src/lib/server/db.ts +++ b/src/lib/server/db.ts @@ -702,8 +702,7 @@ function getSongThumbnailData( WHERE song_thumbnailUrl IN (${thumbUrlsParams});`, thumbUrls, (err, rows: SongThumbnailAvatarRow[]) => { - const afterQuery = performance.now(); - logger.verbose('thumbnail query took', afterQuery - start, 'ms'); + logger.verbose('thumbnail query took', performance.now() - start, 'ms'); if (err != null) { logger.error('Error loading avatars', err); reject(err); @@ -725,8 +724,6 @@ function getSongThumbnailData( }, new Map() ); - const afterReduce = performance.now(); - logger.verbose('thumbnail reduce took', afterReduce - afterQuery, 'ms'); resolve(thumbnailMap); } ); @@ -770,15 +767,12 @@ export async function getPosts( before: string | null, limit: number ): Promise { - const start = performance.now(); if (!databaseReady) { await waitReady(); } - const ready = performance.now(); - logger.debug('DB ready took', ready - start, 'ms'); + const start = performance.now(); const posts = await getPostsInternal(since, before, limit); - const afterPosts = performance.now(); - logger.debug('DB posts', afterPosts - ready, 'ms'); + logger.debug('DB posts', performance.now() - start, 'ms'); return posts; } @@ -810,12 +804,10 @@ async function getPostsInternal( params[acctParam] = ignoredUser; params[usernameParam] = ignoredUser; }); - const afterFilter = performance.now(); - logger.debug('filterQuery took', afterFilter - start, 'ms'); const rows = await getPostData(filterQuery, params); const afterRows = performance.now(); - logger.debug('rows took', afterRows - afterFilter, 'ms'); + logger.debug('getPostData took', afterRows - start, 'ms'); if (rows.length === 0) { // No need to check for tags and songs return []; @@ -823,16 +815,14 @@ async function getPostsInternal( const postIdsParams = rows.map(() => '?').join(', '); const postIds = rows.map((r: PostRow) => r.url); - const afterParams = performance.now(); - logger.debug('params took', afterParams - afterRows, 'ms'); const tagMap = await getTagData(postIdsParams, postIds); const afterTag = performance.now(); - logger.debug('rows took', afterTag - afterRows, 'ms'); + logger.debug('getTagData took', afterTag - afterRows, 'ms'); const songMap = await getSongData(postIdsParams, postIds); const afterSong = performance.now(); - logger.debug('rows took', afterSong - afterTag, 'ms'); + logger.debug('getSongData took', afterSong - afterTag, 'ms'); const turls = songMap .values() @@ -857,15 +847,15 @@ async function getPostsInternal( } } } - const afterThumbs2 = performance.now(); - logger.debug('thumbs took', afterThumbs2 - afterSong, 'ms'); + const afterThumbs = performance.now(); + logger.debug('thumbs took', afterThumbs - afterSong, 'ms'); const accountUrls = [...new Set(rows.map((r: PostRow) => r.account_url))]; const accountUrlsParams = accountUrls.map(() => '?').join(', '); const avatars = await getAvatarData(accountUrlsParams, accountUrls); const afterAvatar = performance.now(); - logger.debug('avatar took', afterAvatar - afterThumbs2, 'ms'); + logger.debug('getAvatarData took', afterAvatar - afterThumbs, 'ms'); const posts = rows.map((row) => { return { @@ -886,8 +876,6 @@ async function getPostsInternal( songs: songMap.get(row.url) || [] } as Post; }); - const afterMap = performance.now(); - logger.debug('map took', afterMap - afterAvatar, 'ms'); return posts; } diff --git a/src/routes/api/posts/+server.ts b/src/routes/api/posts/+server.ts index 11003c0..d14bfd4 100644 --- a/src/routes/api/posts/+server.ts +++ b/src/routes/api/posts/+server.ts @@ -3,7 +3,6 @@ import { json } from '@sveltejs/kit'; import { Logger } from '$lib/log'; import type { RequestHandler } from './$types'; -import { performance } from 'perf_hooks'; const logger = new Logger('+server.ts API'); @@ -11,7 +10,6 @@ export const GET = (async ({ url, setHeaders }) => { setHeaders({ 'cache-control': 'max-age=10' }); - const start = performance.now(); const since = url.searchParams.get('since'); const before = url.searchParams.get('before'); let count = Number.parseInt(url.searchParams.get('count') || ''); @@ -19,13 +17,8 @@ export const GET = (async ({ url, setHeaders }) => { count = 10; } count = Math.min(count, 100); - const afterCount = performance.now(); - logger.debug('Count took', afterCount - start, 'ms'); + const start = performance.now(); const posts = await getPosts(since, before, count); - const afterFetch = performance.now(); - logger.debug('DB took', afterFetch - afterCount, 'ms'); - const resp = json(posts); - const afterResponse = performance.now(); - logger.debug('Response took', afterResponse - afterFetch, 'ms'); - return resp; + logger.debug('DB took', performance.now() - start, 'ms'); + return json(posts); }) satisfies RequestHandler;