Ich gebe zu, dass ich von dieser Art von Reaktion überrascht bin!
Es ist extrem selten, dass man öffentlich darüber spricht (ich denke, dass Software versucht, nicht darüber zu sprechen, um die Benutzer nicht zu erschrecken, besonders bei Open Source), aber ich kenne keine einzige Open-Source-Software, die keine Statistiken über die Versionsfragmentierung, die Nutzung nach Ländern und die Anzahl der Installationen kennt. Entschuldigung, dass ich den Stein ins Rollen gebracht habe ![]()
Hast du schon mit VSCode entwickelt? Firefox (oder anderes) verwendet? Oder sogar Nachrichten auf einem Discourse-Forum wie diesem hier geschrieben?
All diese Software sammelt Statistiken.
Ich sage nicht « weil sie es tun, müssen wir es auch tun ». Ich spreche nicht einmal davon, detaillierte Statistiken zu sammeln, wie diese Software es tut, ich spreche nicht einmal davon, die IPs zu speichern, ich spreche nur davon, « serverseitig » ein Log der Update-Aufrufe zu speichern, nur um den Installationspark zu kennen.
Bist du schockiert, dass es Analytics auf der Gladys-Website gibt? ![]()
Genau! Es ist extrem wichtig zu wissen, welche Versionen im Umlauf sind, allein aus Sicherheitsgründen.
Man denkt an Frankreich, das ein kleines Land ist, aber zum Beispiel in den USA nur « Vereinigte Staaten » zu wissen, gibt wenig Informationen, oder? Eine gekürzte Breiten-/Längengradangabe zu haben, um zu wissen, ob es eher die Westküste/Ostküste ist, scheint mir nicht schlecht zu sein, um zu wissen, wo die Community ist.
Vielleicht habe ich ein zu starkes Wort verwendet, als ich von Telemetrie sprach… ![]()
Ich schlage nur vor, serverseitig die API-Aufrufe für Updates zu zählen und Statistiken über den User-Agent des Programms zu erstellen, das den Aufruf tätigt.
Im Grunde genommen, bei jedem Update-Aufruf, wenn das Programm, das den Aufruf tätigt, als User-Agent « gladys v4.0.1 » hat, im Grunde zähle ich +1 für Gladys v4.0.1, und ich mache ein GeoIP, um das Land + die Region + einen sehr ungenauen Breiten-/Längengrad zu erhalten.
Ich denke an dieses Datenmodell:
CREATE TABLE t_gladys_usage (
id uuid DEFAULT uuid_generate_v4() NOT NULL,
version character varying(255), -- Ex: v4.0.0
country character varying(255), -- Ex: US
region character varying(255), -- Ex: CA
timezone character varying(255), -- America/San-Francisco
region_latitude character varying(255), -- ex: 44.2
region_longitude character varying(255), -- ex: 2.3
created_at timestamptz NOT NULL default now()
);
