Skip to content

Commit

Permalink
REvise the debug config
Browse files Browse the repository at this point in the history
  • Loading branch information
blueww committed Dec 3, 2024
1 parent 4ef5ce8 commit 0e32c0c
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 37 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,5 @@ temp
azurite.exe
.pkg-cache
release
querydb*.json
querydb*.json
AzuriteConfig
51 changes: 15 additions & 36 deletions src/common/Telemetry.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,30 +32,33 @@ export class AzuriteTelemetryClient {
public static envAccountIsSet = false;
public static envDBIsSet = false;

// Debug options
private static isDebug = false;
private static requestCollectPercentage = AzuriteTelemetryClient.isDebug ? 100 : 1;
private static enableAppInsightLog = AzuriteTelemetryClient.isDebug? true : false;
private static cloudRole = AzuriteTelemetryClient.isDebug ? "AzuriteTest" : "Azurite";


private static appInsights = require('applicationinsights');

public static init(location: string, enableTelemetry: boolean, env: any) {
try{
//TODO: check in VSCODE extension
AzuriteTelemetryClient.enableTelemetry = enableTelemetry;

if (enableTelemetry !== false && AzuriteTelemetryClient.initialized != true)
{
//Get instaceID and sessionID
//TODO: need check if this works on VScode extension
AzuriteTelemetryClient.location = location;
AzuriteTelemetryClient.instanceID = AzuriteTelemetryClient.GetInstanceID(typeof env?.inMemoryPersistence === "function" && env?.inMemoryPersistence());

AzuriteTelemetryClient.enableTelemetry = enableTelemetry;
AzuriteTelemetryClient.env = env;
if (AzuriteTelemetryClient.enableTelemetry && AzuriteTelemetryClient.eventClient === undefined)
{
this.eventClient = AzuriteTelemetryClient.createAppInsigntClient("AzuriteTest", 100, 0);
this.eventClient = AzuriteTelemetryClient.createAppInsigntClient(AzuriteTelemetryClient.cloudRole, 100, 0);
}
if (AzuriteTelemetryClient.enableTelemetry && AzuriteTelemetryClient.requestClient === undefined)
{
//TODO: change to 1% in product
this.requestClient = AzuriteTelemetryClient.createAppInsigntClient("AzuriteTest", 100, 0);
this.requestClient = AzuriteTelemetryClient.createAppInsigntClient(AzuriteTelemetryClient.cloudRole, AzuriteTelemetryClient.requestCollectPercentage, 0);
}

AzuriteTelemetryClient.appInsights.start();
Expand All @@ -75,8 +78,7 @@ export class AzuriteTelemetryClient {
}

private static removeRoleInstance ( envelope: Contracts.EnvelopeTelemetry) : boolean {
//var data = envelope.data.baseData;
// envelope.tags["ai.cloud.role"] = "";
// per privacy review, will not collect roleInstance name
envelope.tags["ai.cloud.roleInstance"] = createHash('sha256').update(envelope.tags["ai.cloud.roleInstance"]).digest('hex');

// per privacy review, we will not collect operation name as it contains request path
Expand Down Expand Up @@ -117,9 +119,12 @@ export class AzuriteTelemetryClient {

telemetryClient.config.samplingPercentage = samplingPercentage??100;

// For development only, make your telemetry to be sent as soon as it's collected.
// Enable AppInsight log, should enable in develoipment only
// appConfig.setInternalLogging(true, true);
if (AzuriteTelemetryClient.enableAppInsightLog)
{
appConfig.setInternalLogging(true, true);
}
// Make telemetry to be sent as soon as it's collected. If not use this setting Azurite will exist slower.
if (maxBatchSize !== undefined)
{
telemetryClient.config.maxBatchSize = maxBatchSize??0;
Expand Down Expand Up @@ -195,11 +200,6 @@ export class AzuriteTelemetryClient {
{
requestProperties["requestContentSize"] = context.request?.getHeader("content-length");
}
// if(context.response?.getHeader("content-length") !== undefined)
// {
// // Not work, as responds normally don't have "content-length" header, even has body.
// requestProperties["respondsContentSize"] = context.response?.getHeader("content-length");
// }
AzuriteTelemetryClient.requestClient.trackRequest(
{
name:"Q_" + QueueOperation[context.operation??0],
Expand Down Expand Up @@ -244,11 +244,6 @@ export class AzuriteTelemetryClient {
{
requestProperties["requestContentSize"] = context.request?.getHeader("content-length");
}
// if(context.response?.getHeader("content-length") !== undefined)
// {
// // Not work, as responds normally don't have "content-length" header, even has body.
// requestProperties["respondsContentSize"] = context.response?.getHeader("content-length");
// }
AzuriteTelemetryClient.requestClient.trackRequest(
{
name:"T_" + TableOperation[context.operation??0],
Expand Down Expand Up @@ -287,7 +282,6 @@ export class AzuriteTelemetryClient {
instanceID: AzuriteTelemetryClient.instanceID,
sessionID: AzuriteTelemetryClient.sessionID,
parameters: await AzuriteTelemetryClient.GetAllParameterString()
// TODO: Add start Parameters
}
});
}
Expand Down Expand Up @@ -353,7 +347,6 @@ export class AzuriteTelemetryClient {
AzuriteTelemetryClient.configFileName
);

//const fs = require('fs');
let instaceID = "";
if (inMemoryPersistence)
{
Expand All @@ -378,20 +371,6 @@ export class AzuriteTelemetryClient {
logger.warn('Fail to save instaceID, error: ' + err?.message);
});
}

// fs.readFile(configFilePath, function (err, data) {
// if (!err)
// {
// instaceID = data.toString();
// }
// else
// {
// instaceID = uuid();
// fs.writeFile(configFilePath, instaceID, (err) => {
// //TODO: write warning for write file failed.
// });
// }
// });
}
return instaceID;
} catch (e) {
Expand Down

0 comments on commit 0e32c0c

Please sign in to comment.