diff --git a/db/knex_migrations/2026-01-02-0551-dns-last-result-to-text.js b/db/knex_migrations/2026-01-02-0551-dns-last-result-to-text.js
new file mode 100644
index 000000000..76874e3f0
--- /dev/null
+++ b/db/knex_migrations/2026-01-02-0551-dns-last-result-to-text.js
@@ -0,0 +1,14 @@
+// Change dns_last_result column from VARCHAR(255) to TEXT to handle longer DNS TXT records
+exports.up = function (knex) {
+ return knex.schema
+ .alterTable("monitor", function (table) {
+ table.text("dns_last_result").alter();
+ });
+};
+
+exports.down = function (knex) {
+ return knex.schema
+ .alterTable("monitor", function (table) {
+ table.string("dns_last_result", 255).alter();
+ });
+};
diff --git a/server/model/status_page.js b/server/model/status_page.js
index 224441127..7087e4e09 100644
--- a/server/model/status_page.js
+++ b/server/model/status_page.js
@@ -132,6 +132,9 @@ class StatusPage extends BeanModel {
let ogDescription = $("").attr("content", description155);
head.append(ogDescription);
+ let ogType = $("");
+ head.append(ogType);
+
// Preload data
// Add jsesc, fix https://github.com/louislam/uptime-kuma/issues/2186
const escapedJSONObject = jsesc(await StatusPage.getStatusPageData(statusPage), {
diff --git a/server/notification-providers/discord.js b/server/notification-providers/discord.js
index 98e97b85f..4c573d632 100644
--- a/server/notification-providers/discord.js
+++ b/server/notification-providers/discord.js
@@ -46,6 +46,7 @@ class Discord extends NotificationProvider {
}
// If heartbeatJSON is not null, we go into the normal alerting loop.
+ let addess = this.extractAddress(monitorJSON);
if (heartbeatJSON["status"] === DOWN) {
let discorddowndata = {
username: discordDisplayName,
@@ -58,9 +59,9 @@ class Discord extends NotificationProvider {
name: "Service Name",
value: monitorJSON["name"],
},
- ...(!notification.disableUrl ? [{
+ ...((!notification.disableUrl && addess) ? [{
name: monitorJSON["type"] === "push" ? "Service Type" : "Service URL",
- value: this.extractAddress(monitorJSON),
+ value: addess,
}] : []),
{
name: `Time (${heartbeatJSON["timezone"]})`,
@@ -98,18 +99,18 @@ class Discord extends NotificationProvider {
name: "Service Name",
value: monitorJSON["name"],
},
- ...(!notification.disableUrl ? [{
+ ...((!notification.disableUrl && addess) ? [{
name: monitorJSON["type"] === "push" ? "Service Type" : "Service URL",
- value: this.extractAddress(monitorJSON),
+ value: addess,
}] : []),
{
name: `Time (${heartbeatJSON["timezone"]})`,
value: heartbeatJSON["localDateTime"],
},
- {
+ ...(heartbeatJSON["ping"] != null ? [{
name: "Ping",
- value: heartbeatJSON["ping"] == null ? "N/A" : heartbeatJSON["ping"] + " ms",
- },
+ value: heartbeatJSON["ping"] + " ms",
+ }] : []),
],
}],
};