diff --git a/src/controllers/errorPageController.js b/src/controllers/errorPageController.js index 7ae5a9c..7b94914 100644 --- a/src/controllers/errorPageController.js +++ b/src/controllers/errorPageController.js @@ -5,6 +5,8 @@ const code = req.params.code || parseInt(req.query.code, 10) || 500; const errorContext = getErrorContext(code); + req.log.info("Referrer", req.get("Referrer")); + const context = { title: errorContext.title, message: errorContext.message, diff --git a/src/middleware/redirect.js b/src/middleware/redirect.js index cf206c5..0a8e055 100644 --- a/src/middleware/redirect.js +++ b/src/middleware/redirect.js @@ -2,6 +2,7 @@ const { baseUrl } = require("../utils/baseUrl"); const { qualifyLink } = require("../utils/qualifyLinks"); +const { winstonLogger } = require("../utils/logging"); // Configuration - adjust these as needed const redirectConfig = { @@ -13,6 +14,12 @@ // Generic redirect handler function handleRedirect(req, res, targetPath, status = 302) { const redirectUrl = qualifyLink(targetPath); + winstonLogger.info("Redirect Initiated", { + from: req.originalUrl, + // referrer: req.referrer, + method: req.method, + ip: req.ip, + }); // Check if this is a request that expects JSON (API calls) if (req.accepts("json") && !req.accepts("html")) { diff --git a/src/services/sitemapService.js b/src/services/sitemapService.js index 8302b35..ba33660 100644 --- a/src/services/sitemapService.js +++ b/src/services/sitemapService.js @@ -6,7 +6,7 @@ const hash = require("../utils/hash"); const yaml = require("js-yaml"); -const glob = require("glob"); +const { glob } = require("glob"); const { qualifySitemapLinks } = require("../utils/qualifyLinks"); const { winstonLogger } = require("../utils/logging"); @@ -80,7 +80,7 @@ async getAllTags() { const tagMap = new Map(); - const files = await glob.promises.glob(pattern); + const files = await glob(pattern); for (const file of files) { try { @@ -107,7 +107,7 @@ } return Array.from(tagMap.values()).sort((a, b) => - a.name.localeCompare(b.name) + a.name.localeCompare(b.name), ); } @@ -161,7 +161,7 @@ entries.push(parentEntry); winstonLogger.debug( - `Added docs entry: ${parentEntry.loc} with ${parentEntry.children.length} children` + `Added docs entry: ${parentEntry.loc} with ${parentEntry.children.length} children`, ); } @@ -176,12 +176,12 @@ let existingSet; if (existingUrls) { existingSet = new Set( - existingUrls.map((url) => url.replace(/^https?:\/\/[^\/]+/, "")) + existingUrls.map((url) => url.replace(/^https?:\/\/[^\/]+/, "")), ); } else { const existing = await this.getAllUrls({ excludeNavLinks: true }); existingSet = new Set( - existing.map((e) => e.loc.replace(/^https?:\/\/[^\/]+/, "")) + existing.map((e) => e.loc.replace(/^https?:\/\/[^\/]+/, "")), ); } @@ -229,7 +229,7 @@ const extraPages = transform(navLinks); winstonLogger.debug( - `Generated ${extraPages.length} extra nav link entries` + `Generated ${extraPages.length} extra nav link entries`, ); return extraPages; } catch (err) { @@ -242,12 +242,12 @@ for (const node of tree) { if (Array.isArray(node.children)) { const index = node.children.findIndex( - (child) => child.loc === `#inject:${key}` + (child) => child.loc === `#inject:${key}`, ); if (index !== -1) { winstonLogger.debug( - `Found placeholder #inject:${key}, injecting ${items.length} items` + `Found placeholder #inject:${key}, injecting ${items.length} items`, ); // Replace the placeholder with the actual items node.children.splice(index, 1, ...items); @@ -319,7 +319,7 @@ let extraNavPages = []; if (!excludeNavLinks) { const currentUrls = this.flatten(staticPagesJsonTree).map( - (item) => item.loc + (item) => item.loc, ); extraNavPages = await this.getNavLinksPages(currentUrls); }