mirror of
https://github.com/element-hq/synapse.git
synced 2024-12-14 11:57:44 +00:00
add report_stats_endpoint config option (#6012)
This PR adds the optional `report_stats_endpoint` to configure where stats are reported to, if enabled.
This commit is contained in:
parent
a8251da10f
commit
dd2e5b0038
4 changed files with 19 additions and 2 deletions
1
changelog.d/6012.feature
Normal file
1
changelog.d/6012.feature
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Add report_stats_endpoint option to configure where stats are reported to, if enabled. Contributed by @Sorunome.
|
|
@ -985,6 +985,11 @@ metrics_flags:
|
||||||
# Whether or not to report anonymized homeserver usage statistics.
|
# Whether or not to report anonymized homeserver usage statistics.
|
||||||
# report_stats: true|false
|
# report_stats: true|false
|
||||||
|
|
||||||
|
# The endpoint to report the anonymized homeserver usage statistics to.
|
||||||
|
# Defaults to https://matrix.org/report-usage-stats/push
|
||||||
|
#
|
||||||
|
#report_stats_endpoint: https://example.com/report-usage-stats/push
|
||||||
|
|
||||||
|
|
||||||
## API Configuration ##
|
## API Configuration ##
|
||||||
|
|
||||||
|
|
|
@ -561,10 +561,12 @@ def run(hs):
|
||||||
|
|
||||||
stats["database_engine"] = hs.get_datastore().database_engine_name
|
stats["database_engine"] = hs.get_datastore().database_engine_name
|
||||||
stats["database_server_version"] = hs.get_datastore().get_server_version()
|
stats["database_server_version"] = hs.get_datastore().get_server_version()
|
||||||
logger.info("Reporting stats to matrix.org: %s" % (stats,))
|
logger.info(
|
||||||
|
"Reporting stats to %s: %s" % (hs.config.report_stats_endpoint, stats)
|
||||||
|
)
|
||||||
try:
|
try:
|
||||||
yield hs.get_simple_http_client().put_json(
|
yield hs.get_simple_http_client().put_json(
|
||||||
"https://matrix.org/report-usage-stats/push", stats
|
hs.config.report_stats_endpoint, stats
|
||||||
)
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.warn("Error reporting stats: %s", e)
|
logger.warn("Error reporting stats: %s", e)
|
||||||
|
|
|
@ -37,6 +37,9 @@ class MetricsConfig(Config):
|
||||||
def read_config(self, config, **kwargs):
|
def read_config(self, config, **kwargs):
|
||||||
self.enable_metrics = config.get("enable_metrics", False)
|
self.enable_metrics = config.get("enable_metrics", False)
|
||||||
self.report_stats = config.get("report_stats", None)
|
self.report_stats = config.get("report_stats", None)
|
||||||
|
self.report_stats_endpoint = config.get(
|
||||||
|
"report_stats_endpoint", "https://matrix.org/report-usage-stats/push"
|
||||||
|
)
|
||||||
self.metrics_port = config.get("metrics_port")
|
self.metrics_port = config.get("metrics_port")
|
||||||
self.metrics_bind_host = config.get("metrics_bind_host", "127.0.0.1")
|
self.metrics_bind_host = config.get("metrics_bind_host", "127.0.0.1")
|
||||||
|
|
||||||
|
@ -95,4 +98,10 @@ class MetricsConfig(Config):
|
||||||
else:
|
else:
|
||||||
res += "report_stats: %s\n" % ("true" if report_stats else "false")
|
res += "report_stats: %s\n" % ("true" if report_stats else "false")
|
||||||
|
|
||||||
|
res += """
|
||||||
|
# The endpoint to report the anonymized homeserver usage statistics to.
|
||||||
|
# Defaults to https://matrix.org/report-usage-stats/push
|
||||||
|
#
|
||||||
|
#report_stats_endpoint: https://example.com/report-usage-stats/push
|
||||||
|
"""
|
||||||
return res
|
return res
|
||||||
|
|
Loading…
Reference in a new issue