@lark-apaas/observable 1.0.4-alpha.4 → 1.0.4-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +128 -93
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +128 -93
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -8844,7 +8844,7 @@ __name(hrTimeToNanosNumber, "hrTimeToNanosNumber");
|
|
|
8844
8844
|
|
|
8845
8845
|
// package.json
|
|
8846
8846
|
var package_default = {
|
|
8847
|
-
version: "1.0.4-alpha.
|
|
8847
|
+
version: "1.0.4-alpha.5"};
|
|
8848
8848
|
|
|
8849
8849
|
// src/const.ts
|
|
8850
8850
|
var AppEnv = /* @__PURE__ */ (function(AppEnv2) {
|
|
@@ -8857,6 +8857,7 @@ var defaultResourceAttr = {
|
|
|
8857
8857
|
"sdk_type": "client-backend",
|
|
8858
8858
|
"sdk_language": "node"
|
|
8859
8859
|
};
|
|
8860
|
+
var pointKillTag = "__point_kill_info";
|
|
8860
8861
|
var TraceDropToken = "TraceDropToken";
|
|
8861
8862
|
|
|
8862
8863
|
// src/utils/convertAllAttrIntoString.ts
|
|
@@ -8876,60 +8877,14 @@ function convertAttributesToString(attributes) {
|
|
|
8876
8877
|
}
|
|
8877
8878
|
__name(convertAttributesToString, "convertAttributesToString");
|
|
8878
8879
|
|
|
8879
|
-
// src/
|
|
8880
|
-
|
|
8881
|
-
|
|
8882
|
-
|
|
8883
|
-
|
|
8884
|
-
|
|
8885
|
-
|
|
8886
|
-
|
|
8887
|
-
logs: {
|
|
8888
|
-
modules: []
|
|
8889
|
-
},
|
|
8890
|
-
traces: {
|
|
8891
|
-
modules: []
|
|
8892
|
-
},
|
|
8893
|
-
metrics: {
|
|
8894
|
-
modules: []
|
|
8895
|
-
}
|
|
8896
|
-
};
|
|
8897
|
-
constructor() {
|
|
8898
|
-
}
|
|
8899
|
-
static getInstance() {
|
|
8900
|
-
if (!_PointKillManager.instance) {
|
|
8901
|
-
_PointKillManager.instance = new _PointKillManager();
|
|
8902
|
-
}
|
|
8903
|
-
return _PointKillManager.instance;
|
|
8904
|
-
}
|
|
8905
|
-
getConfig() {
|
|
8906
|
-
return this.config;
|
|
8907
|
-
}
|
|
8908
|
-
updateConfig(newConfig) {
|
|
8909
|
-
this.config = {
|
|
8910
|
-
logs: {
|
|
8911
|
-
modules: [
|
|
8912
|
-
...newConfig.logs.modules
|
|
8913
|
-
]
|
|
8914
|
-
},
|
|
8915
|
-
traces: {
|
|
8916
|
-
modules: [
|
|
8917
|
-
...newConfig.traces.modules
|
|
8918
|
-
]
|
|
8919
|
-
},
|
|
8920
|
-
metrics: {
|
|
8921
|
-
modules: [
|
|
8922
|
-
...newConfig.metrics.modules
|
|
8923
|
-
]
|
|
8924
|
-
}
|
|
8925
|
-
};
|
|
8926
|
-
}
|
|
8927
|
-
setConfig(configStr) {
|
|
8928
|
-
if (!configStr) return;
|
|
8929
|
-
try {
|
|
8930
|
-
const res = JSON.parse(configStr);
|
|
8931
|
-
const { logs: logs2, traces, metrics } = res ?? {};
|
|
8932
|
-
this.updateConfig({
|
|
8880
|
+
// src/utils/getSnippingConfig.ts
|
|
8881
|
+
function processSnipConfig(configStr) {
|
|
8882
|
+
if (!configStr) return;
|
|
8883
|
+
try {
|
|
8884
|
+
const res = JSON.parse(configStr);
|
|
8885
|
+
const { logs: logs2, traces, metrics } = res ?? {};
|
|
8886
|
+
if (res) {
|
|
8887
|
+
return {
|
|
8933
8888
|
logs: {
|
|
8934
8889
|
modules: Array.isArray(logs2?.modules) ? logs2.modules : []
|
|
8935
8890
|
},
|
|
@@ -8939,19 +8894,16 @@ var PointKillManager = class _PointKillManager {
|
|
|
8939
8894
|
metrics: {
|
|
8940
8895
|
modules: Array.isArray(metrics?.modules) ? metrics.modules : []
|
|
8941
8896
|
}
|
|
8942
|
-
}
|
|
8943
|
-
}
|
|
8944
|
-
|
|
8945
|
-
}
|
|
8946
|
-
}
|
|
8947
|
-
updateFromHeaders(headers) {
|
|
8948
|
-
const snipingConfig = headers[_PointKillManager.CONFIG_HEADER_NAME] || headers[_PointKillManager.CONFIG_HEADER_NAME.toLowerCase()];
|
|
8949
|
-
if (snipingConfig) {
|
|
8950
|
-
this.setConfig(snipingConfig);
|
|
8897
|
+
};
|
|
8898
|
+
} else {
|
|
8899
|
+
return void 0;
|
|
8951
8900
|
}
|
|
8901
|
+
} catch (error) {
|
|
8902
|
+
console.error("Failed to parse sniping config:", error);
|
|
8903
|
+
return void 0;
|
|
8952
8904
|
}
|
|
8953
|
-
}
|
|
8954
|
-
|
|
8905
|
+
}
|
|
8906
|
+
__name(processSnipConfig, "processSnipConfig");
|
|
8955
8907
|
|
|
8956
8908
|
// src/core/log-exporter.ts
|
|
8957
8909
|
var CustomExporter = class {
|
|
@@ -8963,18 +8915,21 @@ var CustomExporter = class {
|
|
|
8963
8915
|
constructor() {
|
|
8964
8916
|
}
|
|
8965
8917
|
export(logs2, resultCallback) {
|
|
8966
|
-
const snipingConfig = pointKillManager.getConfig();
|
|
8967
|
-
console.log("snipingConfig", snipingConfig);
|
|
8968
|
-
if (snipingConfig.logs.modules.includes("*")) {
|
|
8969
|
-
resultCallback({
|
|
8970
|
-
code: core.ExportResultCode.SUCCESS
|
|
8971
|
-
});
|
|
8972
|
-
return;
|
|
8973
|
-
}
|
|
8974
8918
|
const filteredLogs = logs2.filter((log) => {
|
|
8975
|
-
const
|
|
8976
|
-
if (
|
|
8977
|
-
|
|
8919
|
+
const pkTag = log.attributes?.[pointKillTag];
|
|
8920
|
+
if (pkTag) {
|
|
8921
|
+
try {
|
|
8922
|
+
const snipingConfig = processSnipConfig(pkTag);
|
|
8923
|
+
if (snipingConfig?.logs?.modules?.includes("*")) {
|
|
8924
|
+
return false;
|
|
8925
|
+
}
|
|
8926
|
+
const module = log.attributes?.module;
|
|
8927
|
+
if (module && snipingConfig?.logs?.modules?.includes(module)) {
|
|
8928
|
+
return false;
|
|
8929
|
+
}
|
|
8930
|
+
} catch (e) {
|
|
8931
|
+
console.error(`Failed to parse ${pointKillTag} in log exporter:`, e);
|
|
8932
|
+
}
|
|
8978
8933
|
}
|
|
8979
8934
|
return true;
|
|
8980
8935
|
});
|
|
@@ -9054,24 +9009,22 @@ var CustomTraceExporter = class {
|
|
|
9054
9009
|
tracePrefix = "force-trace-prefix";
|
|
9055
9010
|
traceSuffix = "force-trace-suffix";
|
|
9056
9011
|
export(spans, resultCallback) {
|
|
9057
|
-
const snipingConfig = pointKillManager.getConfig();
|
|
9058
|
-
console.log("snipingConfig", snipingConfig);
|
|
9059
|
-
if (snipingConfig.traces.modules.includes("*")) {
|
|
9060
|
-
resultCallback({
|
|
9061
|
-
code: core.ExportResultCode.SUCCESS
|
|
9062
|
-
});
|
|
9063
|
-
return;
|
|
9064
|
-
}
|
|
9065
|
-
const isDev = process.env.NODE_ENV === "development";
|
|
9066
|
-
const defaultAttributes = {
|
|
9067
|
-
uuid: idGenerator.generateTraceId(),
|
|
9068
|
-
app_env: isDev ? AppEnv.Dev : AppEnv.Prod
|
|
9069
|
-
};
|
|
9070
9012
|
const finalSpans = spans.filter((span) => {
|
|
9071
9013
|
if ((span.attributes ?? {})[TraceDropToken]) return false;
|
|
9072
|
-
const
|
|
9073
|
-
if (
|
|
9074
|
-
|
|
9014
|
+
const pkTag = span.attributes?.[pointKillTag];
|
|
9015
|
+
if (pkTag) {
|
|
9016
|
+
try {
|
|
9017
|
+
const snipingConfig = processSnipConfig(pkTag);
|
|
9018
|
+
if (snipingConfig?.traces?.modules?.includes("*")) {
|
|
9019
|
+
return false;
|
|
9020
|
+
}
|
|
9021
|
+
const module = span.attributes?.module;
|
|
9022
|
+
if (module && snipingConfig?.traces?.modules?.includes(module)) {
|
|
9023
|
+
return false;
|
|
9024
|
+
}
|
|
9025
|
+
} catch (e) {
|
|
9026
|
+
console.error(`Failed to parse in trace exporter:`, e);
|
|
9027
|
+
}
|
|
9075
9028
|
}
|
|
9076
9029
|
return true;
|
|
9077
9030
|
});
|
|
@@ -9081,6 +9034,11 @@ var CustomTraceExporter = class {
|
|
|
9081
9034
|
});
|
|
9082
9035
|
return;
|
|
9083
9036
|
}
|
|
9037
|
+
const isDev = process.env.NODE_ENV === "development";
|
|
9038
|
+
const defaultAttributes = {
|
|
9039
|
+
uuid: idGenerator.generateTraceId(),
|
|
9040
|
+
app_env: isDev ? AppEnv.Dev : AppEnv.Prod
|
|
9041
|
+
};
|
|
9084
9042
|
const otlpLikeStructure = {
|
|
9085
9043
|
resource: {
|
|
9086
9044
|
attributes: {
|
|
@@ -9121,6 +9079,83 @@ function isObservable(input) {
|
|
|
9121
9079
|
}
|
|
9122
9080
|
__name(isObservable, "isObservable");
|
|
9123
9081
|
|
|
9082
|
+
// src/core/point-kill/index.ts
|
|
9083
|
+
var PointKillManager = class _PointKillManager {
|
|
9084
|
+
static {
|
|
9085
|
+
__name(this, "PointKillManager");
|
|
9086
|
+
}
|
|
9087
|
+
static instance;
|
|
9088
|
+
static CONFIG_HEADER_NAME = "x-force-observability-pointkill";
|
|
9089
|
+
config = {
|
|
9090
|
+
logs: {
|
|
9091
|
+
modules: []
|
|
9092
|
+
},
|
|
9093
|
+
traces: {
|
|
9094
|
+
modules: []
|
|
9095
|
+
},
|
|
9096
|
+
metrics: {
|
|
9097
|
+
modules: []
|
|
9098
|
+
}
|
|
9099
|
+
};
|
|
9100
|
+
constructor() {
|
|
9101
|
+
}
|
|
9102
|
+
static getInstance() {
|
|
9103
|
+
if (!_PointKillManager.instance) {
|
|
9104
|
+
_PointKillManager.instance = new _PointKillManager();
|
|
9105
|
+
}
|
|
9106
|
+
return _PointKillManager.instance;
|
|
9107
|
+
}
|
|
9108
|
+
getConfig() {
|
|
9109
|
+
return this.config;
|
|
9110
|
+
}
|
|
9111
|
+
updateConfig(newConfig) {
|
|
9112
|
+
this.config = {
|
|
9113
|
+
logs: {
|
|
9114
|
+
modules: [
|
|
9115
|
+
...newConfig.logs.modules
|
|
9116
|
+
]
|
|
9117
|
+
},
|
|
9118
|
+
traces: {
|
|
9119
|
+
modules: [
|
|
9120
|
+
...newConfig.traces.modules
|
|
9121
|
+
]
|
|
9122
|
+
},
|
|
9123
|
+
metrics: {
|
|
9124
|
+
modules: [
|
|
9125
|
+
...newConfig.metrics.modules
|
|
9126
|
+
]
|
|
9127
|
+
}
|
|
9128
|
+
};
|
|
9129
|
+
}
|
|
9130
|
+
setConfig(configStr) {
|
|
9131
|
+
if (!configStr) return;
|
|
9132
|
+
try {
|
|
9133
|
+
const res = JSON.parse(configStr);
|
|
9134
|
+
const { logs: logs2, traces, metrics } = res ?? {};
|
|
9135
|
+
this.updateConfig({
|
|
9136
|
+
logs: {
|
|
9137
|
+
modules: Array.isArray(logs2?.modules) ? logs2.modules : []
|
|
9138
|
+
},
|
|
9139
|
+
traces: {
|
|
9140
|
+
modules: Array.isArray(traces?.modules) ? traces.modules : []
|
|
9141
|
+
},
|
|
9142
|
+
metrics: {
|
|
9143
|
+
modules: Array.isArray(metrics?.modules) ? metrics.modules : []
|
|
9144
|
+
}
|
|
9145
|
+
});
|
|
9146
|
+
} catch (error) {
|
|
9147
|
+
console.error("Failed to parse sniping config:", error);
|
|
9148
|
+
}
|
|
9149
|
+
}
|
|
9150
|
+
updateFromHeaders(headers) {
|
|
9151
|
+
const snipingConfig = headers[_PointKillManager.CONFIG_HEADER_NAME] || headers[_PointKillManager.CONFIG_HEADER_NAME.toLowerCase()];
|
|
9152
|
+
if (snipingConfig) {
|
|
9153
|
+
this.setConfig(snipingConfig);
|
|
9154
|
+
}
|
|
9155
|
+
}
|
|
9156
|
+
};
|
|
9157
|
+
var pointKillManager = PointKillManager.getInstance();
|
|
9158
|
+
|
|
9124
9159
|
// src/core/sdk.ts
|
|
9125
9160
|
var AppOTelSDK = class _AppOTelSDK {
|
|
9126
9161
|
static {
|