File size: 852 Bytes
80f4e3d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
import { configService, Telemetry } from '@config/env.config';
import axios from 'axios';
import fs from 'fs';
const packageJson = JSON.parse(fs.readFileSync('./package.json', 'utf8'));
export interface TelemetryData {
route: string;
apiVersion: string;
timestamp: Date;
}
export const sendTelemetry = async (route: string): Promise<void> => {
const telemetryConfig = configService.get<Telemetry>('TELEMETRY');
if (!telemetryConfig.ENABLED) {
return;
}
if (route === '/') {
return;
}
const telemetry: TelemetryData = {
route,
apiVersion: `${packageJson.version}`,
timestamp: new Date(),
};
const url =
telemetryConfig.URL && telemetryConfig.URL !== '' ? telemetryConfig.URL : 'https://log.evolution-api.com/telemetry';
axios
.post(url, telemetry)
.then(() => {})
.catch(() => {});
};
|