MCPcopy Create free account
hub / github.com/anus-dev/ANUS / manageTelemetrySettings

Function manageTelemetrySettings

scripts/telemetry_utils.js:292–368  ·  view source on GitHub ↗
(
  enable,
  oTelEndpoint = 'http://localhost:4317',
  target = 'local',
  originalSandboxSettingToRestore,
)

Source from the content-addressed store, hash-verified

290}
291
292export function manageTelemetrySettings(
293 enable,
294 oTelEndpoint = 'http://localhost:4317',
295 target = 'local',
296 originalSandboxSettingToRestore,
297) {
298 const workspaceSettings = readJsonFile(WORKSPACE_SETTINGS_FILE);
299 const currentSandboxSetting = workspaceSettings.sandbox;
300 let settingsModified = false;
301
302 if (typeof workspaceSettings.telemetry !== 'object') {
303 workspaceSettings.telemetry = {};
304 }
305
306 if (enable) {
307 if (workspaceSettings.telemetry.enabled !== true) {
308 workspaceSettings.telemetry.enabled = true;
309 settingsModified = true;
310 console.log('⚙️ Enabled telemetry in workspace settings.');
311 }
312 if (workspaceSettings.sandbox !== false) {
313 workspaceSettings.sandbox = false;
314 settingsModified = true;
315 console.log('✅ Disabled sandbox mode for telemetry.');
316 }
317 if (workspaceSettings.telemetry.otlpEndpoint !== oTelEndpoint) {
318 workspaceSettings.telemetry.otlpEndpoint = oTelEndpoint;
319 settingsModified = true;
320 console.log(`🔧 Set telemetry OTLP endpoint to ${oTelEndpoint}.`);
321 }
322 if (workspaceSettings.telemetry.target !== target) {
323 workspaceSettings.telemetry.target = target;
324 settingsModified = true;
325 console.log(`🎯 Set telemetry target to ${target}.`);
326 }
327 } else {
328 if (workspaceSettings.telemetry.enabled === true) {
329 delete workspaceSettings.telemetry.enabled;
330 settingsModified = true;
331 console.log('⚙️ Disabled telemetry in workspace settings.');
332 }
333 if (workspaceSettings.telemetry.otlpEndpoint) {
334 delete workspaceSettings.telemetry.otlpEndpoint;
335 settingsModified = true;
336 console.log('🔧 Cleared telemetry OTLP endpoint.');
337 }
338 if (workspaceSettings.telemetry.target) {
339 delete workspaceSettings.telemetry.target;
340 settingsModified = true;
341 console.log('🎯 Cleared telemetry target.');
342 }
343 if (Object.keys(workspaceSettings.telemetry).length === 0) {
344 delete workspaceSettings.telemetry;
345 }
346
347 if (
348 originalSandboxSettingToRestore !== undefined &&
349 workspaceSettings.sandbox !== originalSandboxSettingToRestore

Callers 3

mainFunction · 0.90
mainFunction · 0.90
cleanupFunction · 0.85

Calls 2

readJsonFileFunction · 0.85
writeJsonFileFunction · 0.85

Tested by

no test coverage detected