send telemetry about private providers

This commit is contained in:
Marc-Roig 2023-03-15 14:37:31 +01:00
parent 2f6afb9695
commit a95c6a8c5e
6 changed files with 24 additions and 5 deletions

View File

@ -17,6 +17,7 @@ const LIMITED_EVENTS = [
'didSaveMediaWithCaption', 'didSaveMediaWithCaption',
'didDisableResponsiveDimensions', 'didDisableResponsiveDimensions',
'didEnableResponsiveDimensions', 'didEnableResponsiveDimensions',
'didInitializePluginUpload',
]; ];
const createTelemetryInstance = (strapi) => { const createTelemetryInstance = (strapi) => {

View File

@ -37,7 +37,8 @@ module.exports = async ({ strapi }) => {
await registerPermissionActions(); await registerPermissionActions();
await getService('metrics').registerCron(); await getService('weeklyMetrics').registerCron();
await getService('metrics').sendUploadPluginMetrics();
}; };
const registerPermissionActions = async () => { const registerPermissionActions = async () => {

View File

@ -1,6 +1,6 @@
'use strict'; 'use strict';
const metricsService = require('../metrics'); const metricsService = require('../metrics/weekly-metrics');
describe('metrics', () => { describe('metrics', () => {
describe('computeMetrics', () => { describe('computeMetrics', () => {

View File

@ -5,7 +5,8 @@ const upload = require('./upload');
const imageManipulation = require('./image-manipulation'); const imageManipulation = require('./image-manipulation');
const folder = require('./folder'); const folder = require('./folder');
const file = require('./file'); const file = require('./file');
const metrics = require('./metrics'); const weeklyMetrics = require('./metrics/weekly-metrics');
const metrics = require('./metrics/metrics');
const apiUploadFolder = require('./api-upload-folder'); const apiUploadFolder = require('./api-upload-folder');
const extensions = require('./extensions'); const extensions = require('./extensions');
@ -14,6 +15,7 @@ module.exports = {
upload, upload,
folder, folder,
file, file,
weeklyMetrics,
metrics, metrics,
'image-manipulation': imageManipulation, 'image-manipulation': imageManipulation,
'api-upload-folder': apiUploadFolder, 'api-upload-folder': apiUploadFolder,

View File

@ -0,0 +1,15 @@
'use strict';
const getProviderName = () => strapi.config.get('plugin.upload.provider', 'local');
const getProviderIsPrivate = () => strapi.plugin('upload').provider.isPrivate();
module.exports = ({ strapi }) => ({
async sendUploadPluginMetrics() {
const provider = await getProviderName();
const isPrivate = await getProviderIsPrivate();
await strapi.telemetry.send('didInitializePluginUpload', {
groupProperties: { provider, isPrivate },
});
},
});

View File

@ -2,8 +2,8 @@
const { defaultTo } = require('lodash/fp'); const { defaultTo } = require('lodash/fp');
const { add } = require('date-fns'); const { add } = require('date-fns');
const { FOLDER_MODEL_UID, FILE_MODEL_UID } = require('../constants'); const { FOLDER_MODEL_UID, FILE_MODEL_UID } = require('../../constants');
const { getWeeklyCronScheduleAt } = require('../utils/cron'); const { getWeeklyCronScheduleAt } = require('../../utils/cron');
const ONE_WEEK = 7 * 24 * 60 * 60 * 1000; const ONE_WEEK = 7 * 24 * 60 * 60 * 1000;