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