Merge pull request #318 from automatisch/feature/telemetry-diagnostic-info

feat: Implement telemetry for diagnostic info
This commit is contained in:
Ömer Faruk Aydın
2022-05-05 10:51:17 +02:00
committed by GitHub

View File

@@ -7,9 +7,12 @@ import Flow from '../../models/flow';
import Execution from '../../models/execution';
import ExecutionStep from '../../models/execution-step';
import Connection from '../../models/connection';
import os from 'os';
const WRITE_KEY = '284Py4VgK2MsNYV7xlKzyrALx0v';
const DATA_PLANE_URL = 'https://telemetry.automatisch.io/v1/batch';
const CPUS = os.cpus();
const SIX_HOURS_IN_MILLISECONDS = 21600000;
class Telemetry {
organizationId: string;
@@ -119,8 +122,27 @@ class Telemetry {
updatedAt: connection.updatedAt,
});
}
diagnosticInfo() {
this.track('diagnosticInfo', {
automatischVersion: process.env.npm_package_version,
operatingSystem: {
type: os.type(),
version: os.version(),
},
memory: os.totalmem() / (1024 * 1024), // To get as megabytes
cpus: {
count: CPUS.length,
model: CPUS[0].model,
speed: CPUS[0].speed,
},
});
setTimeout(this.diagnosticInfo, SIX_HOURS_IN_MILLISECONDS);
}
}
const telemetry = new Telemetry();
telemetry.diagnosticInfo();
export default telemetry;