Add BookWyrm stats

This commit is contained in:
Daniel Mason 2023-03-26 08:58:36 +13:00
parent 853e7ea48f
commit c252860d87
Signed by: idanoo
GPG key ID: 387387CDBC02F132
4 changed files with 25 additions and 0 deletions

View file

@ -9,6 +9,7 @@ MATRIX_DB_SCHEMA=matrix
MASTODON_DB_SCHEMA=mastodon_production
MOBILIZON_DB_SCHEMA=mobilizon_prod
PEERTUBE_DB_SCHEMA=peertube_prod
BOOKWYRM_DB_SCHEMA=bookwyrm
MATRIX_WEBHOOK_URL=""
MATRIX_WEBHOOK_API_KEY=""

View file

@ -77,6 +77,7 @@ func main() {
gms.MASTODON_DB_SCHEMA = os.Getenv("MASTODON_DB_SCHEMA")
gms.MOBILIZON_DB_SCHEMA = os.Getenv("MOBILIZON_DB_SCHEMA")
gms.PEERTUBE_DB_SCHEMA = os.Getenv("PEERTUBE_DB_SCHEMA")
gms.BOOKWYRM_DB_SCHEMA = os.Getenv("BOOKWYRM_DB_SCHEMA")
gms.Run()
}

View file

@ -32,6 +32,7 @@ var (
MASTODON_IDENTIFIER: "https://mastodon.nz",
MOBILIZON_IDENTIFIER: "https://openevents.nz",
PEERTUBE_IDENTIFIER: "https://peertube.nz",
BOOKWYRM_IDENTIFIER: "https://bookworm.nz",
}
// Pixelfed
@ -59,4 +60,9 @@ var (
PEERTUBE_DB_SCHEMA string
PEERTUBE_USER_QUERY = "SELECT count(*) FROM \"user\" WHERE blocked = False;"
PEERTUBE_IDENTIFIER = "peertube"
// BookWyrm
BOOKWYRM_DB_SCHEMA string
BOOKWYRM_USER_QUERY = "SELECT count(*) FROM bookwyrm_user WHERE local = True AND is_active = True;"
BOOKWYRM_IDENTIFIER = "bookwyrm"
)

View file

@ -138,6 +138,23 @@ func getUserCounts() ([]metric, error) {
}
}
if BOOKWYRM_DB_SCHEMA != "" {
userCount, err := runIntQuery(BOOKWYRM_DB_SCHEMA, BOOKWYRM_USER_QUERY)
if err != nil {
log.Println(err)
} else {
m := metric{
Service: BOOKWYRM_IDENTIFIER,
MetricName: METRICNAME_USERCOUNT,
MetricValue: userCount,
PreviousDayMetricValue: getLastMetric(BOOKWYRM_IDENTIFIER),
PreviousWeekMetricValue: getLastWeekMetric(BOOKWYRM_IDENTIFIER),
}
log.Printf("%s user count: %d", BOOKWYRM_IDENTIFIER, userCount)
metrics = append(metrics, m)
}
}
return metrics, nil
}