Central Log Setup
Logs are saved automatically in Vercel Log Console. To visually view logs from all user browsers here, set up a free Google Sheet.
✓ Configured! Logs will load centrally from Google Sheet.
Google Sheet Setup Guide
- Create a new Google Sheet.
- Click Extensions > Apps Script.
- Paste the code block below into the editor.
- Click Deploy > New Deployment.
- Choose Web App, set Access to "Anyone", and click Deploy.
- Copy the Web App URL and paste it in the configuration above.
function doPost(e) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var data = JSON.parse(e.postData.contents);
sheet.appendRow([
data.timestamp,
data.action,
data.url,
data.ip || "Client",
JSON.stringify(data.details)
]);
return ContentService.createTextOutput("Success");
}
function doGet() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var rows = sheet.getDataRange().getValues();
var logs = [];
// Skip header if any, read backwards
for (var i = rows.length - 1; i >= 1; i--) {
logs.push({
timestamp: rows[i][0],
action: rows[i][1],
url: rows[i][2],
ip: rows[i][3],
details: JSON.parse(rows[i][4] || "{}")
});
}
return ContentService.createTextOutput(JSON.stringify(logs))
.setMimeType(ContentService.MimeType.JSON);
}