log10x-mcp 1.30.28 → 1.30.30
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/build/bin/tenx-recur.js +1 -0
- package/build/bin/tenx-recur.js.map +1 -1
- package/build/lib/cost.d.ts +67 -9
- package/build/lib/cost.js +145 -21
- package/build/lib/cost.js.map +1 -1
- package/build/lib/plan-solver.js +4 -4
- package/build/lib/plan-solver.js.map +1 -1
- package/build/lib/poc-envelope-v2.js +41 -13
- package/build/lib/poc-envelope-v2.js.map +1 -1
- package/build/lib/poc-report-renderer.js +2 -2
- package/build/lib/poc-report-renderer.js.map +1 -1
- package/build/lib/recur-history-reader.d.ts +2 -0
- package/build/lib/recur-history-reader.js +1 -0
- package/build/lib/recur-history-reader.js.map +1 -1
- package/build/lib/recurring-tick.d.ts +7 -1
- package/build/lib/recurring-tick.js +29 -10
- package/build/lib/recurring-tick.js.map +1 -1
- package/build/lib/server-instructions.js +2 -2
- package/build/lib/top-patterns-render.js +15 -1
- package/build/lib/top-patterns-render.js.map +1 -1
- package/build/product-kb/docs/api/github.md +1 -1
- package/build/product-kb/docs/api/js.md +1 -1
- package/build/product-kb/docs/apps/mcp/tools/drop/pattern-mitigate.md +1 -1
- package/build/product-kb/docs/apps/receiver/compact/index.md +5 -5
- package/build/product-kb/docs/apps/receiver/compact/splunk.md +7 -1
- package/build/product-kb/docs/apps/receiver/faq.md +1 -1
- package/build/product-kb/docs/apps/receiver/index.md +1 -1
- package/build/product-kb/docs/apps/receiver/run.md +3 -3
- package/build/product-kb/docs/apps/reporter/faq.md +1 -1
- package/build/product-kb/docs/faq/apps/receiver.md +1 -1
- package/build/product-kb/docs/faq/apps/reporter.md +1 -1
- package/build/product-kb/docs/faq/general.md +20 -12
- package/build/product-kb/docs/faq/pricing/overview.md +1 -1
- package/build/product-kb/docs/faq/stacks/aws-cloudwatch.md +7 -8
- package/build/product-kb/docs/faq/stacks/datadog/comparisons.md +1 -1
- package/build/product-kb/docs/faq/stacks/datadog/integration.md +5 -5
- package/build/product-kb/docs/faq/stacks/splunk/comparisons.md +3 -3
- package/build/product-kb/docs/faq/stacks/splunk/compatibility.md +2 -2
- package/build/product-kb/docs/faq/stacks/splunk/index.md +1 -1
- package/build/product-kb/docs/faq/stacks/splunk/optimization.md +2 -2
- package/build/tools/commitment-report.d.ts +2 -0
- package/build/tools/commitment-report.js +11 -3
- package/build/tools/commitment-report.js.map +1 -1
- package/build/tools/configure-engine.js +12 -6
- package/build/tools/configure-engine.js.map +1 -1
- package/build/tools/cost-options.js +8 -4
- package/build/tools/cost-options.js.map +1 -1
- package/build/tools/estimate-savings.js +24 -5
- package/build/tools/estimate-savings.js.map +1 -1
- package/build/tools/explain-mode.js +43 -10
- package/build/tools/explain-mode.js.map +1 -1
- package/build/tools/pattern-mitigate.js +2 -1
- package/build/tools/pattern-mitigate.js.map +1 -1
- package/build/tools/product-qa.d.ts +2 -2
- package/package.json +1 -1
package/build/bin/tenx-recur.js
CHANGED
|
@@ -99,6 +99,7 @@ function printRunSummary(result) {
|
|
|
99
99
|
ts: new Date().toISOString(),
|
|
100
100
|
status: result.status,
|
|
101
101
|
projected_savings_pct: parseFloat(result.projected_savings_pct.toFixed(2)),
|
|
102
|
+
...(result.projected_savings_basis ? { projected_savings_basis: result.projected_savings_basis } : {}),
|
|
102
103
|
delta_patterns: result.delta_patterns,
|
|
103
104
|
delta_pp: parseFloat(result.delta_pp.toFixed(2)),
|
|
104
105
|
message: result.message,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenx-recur.js","sourceRoot":"","sources":["../../src/bin/tenx-recur.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tenx-recur.js","sourceRoot":"","sources":["../../src/bin/tenx-recur.ts"],"names":[],"mappings":"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"}
|
package/build/lib/cost.d.ts
CHANGED
|
@@ -11,13 +11,21 @@
|
|
|
11
11
|
* uncertainty bands, and degrades savings for small events where
|
|
12
12
|
* envelope overhead dominates.
|
|
13
13
|
*
|
|
14
|
-
* Compact-ratio numbers
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* -
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
14
|
+
* Compact-ratio numbers, and where each comes from. The model's
|
|
15
|
+
* `compact_ratio_basis` carries the same statement into every output that
|
|
16
|
+
* quotes the figure:
|
|
17
|
+
* - Splunk: measured once, in Splunk's own licence meter (E21,
|
|
18
|
+
* log-10x/benchmarks#18, splunk-license/results/results.md). One
|
|
19
|
+
* OpenTelemetry demo capture, 214,841,731 licence-metered bytes without
|
|
20
|
+
* compact and 80,653,626 with it: 62.46% less. Per container 57.86% (ad)
|
|
21
|
+
* to 69.27% (opensearch). Modeled as 0.3073..0.4214, expected 0.3754.
|
|
22
|
+
* - Elasticsearch unpruned: measured once on disk (ES_ON_DISK_RATIO): one
|
|
23
|
+
* OpenTelemetry demo capture, 28.6 MB raw against 13.8 MB compact plus
|
|
24
|
+
* templates, 51.7% less, ES 8.17.0, nothing pruned from _source. Returned
|
|
25
|
+
* via getDestinationCostModel(dest, {esPruned:false}).
|
|
26
|
+
* - Elasticsearch pruned (compactable fields excluded from _source): no run.
|
|
27
|
+
* Carries the unpruned measurement as a floor and says so; pruning
|
|
28
|
+
* removes more, unmeasured.
|
|
21
29
|
* - Datadog/CW/Azure/GCP/Sumo/Coralogix/ClickHouse: no-op. compact_ratio =
|
|
22
30
|
* 1.0..1.0; a caveat is emitted by callers. On ClickHouse the reason is
|
|
23
31
|
* measured rather than structural: the text index and the column codecs
|
|
@@ -181,6 +189,29 @@ export interface DestinationCostModel {
|
|
|
181
189
|
*/
|
|
182
190
|
compact_ratio_low: number;
|
|
183
191
|
compact_ratio_high: number;
|
|
192
|
+
/**
|
|
193
|
+
* The expected ratio when it is not the band's midpoint: a measured total
|
|
194
|
+
* can sit off-centre of the per-slice spread measured with it. Read it
|
|
195
|
+
* through expectedCompactRatio(), never directly.
|
|
196
|
+
*/
|
|
197
|
+
compact_ratio_expected?: number;
|
|
198
|
+
/**
|
|
199
|
+
* Where the band comes from, rendered beside every figure quoted from it.
|
|
200
|
+
* `short` fits one line of a reason; `full` names the run and its
|
|
201
|
+
* denominator. A band with no run behind it says so here, so it never reads
|
|
202
|
+
* as measured.
|
|
203
|
+
*/
|
|
204
|
+
compact_ratio_basis?: {
|
|
205
|
+
short: string;
|
|
206
|
+
full: string;
|
|
207
|
+
};
|
|
208
|
+
/**
|
|
209
|
+
* How compact events read back here, stated to what is verified: how
|
|
210
|
+
* exactly they expand and which searches see the full text. Every sentence
|
|
211
|
+
* that would otherwise say "losslessly" or "fully searchable" renders this
|
|
212
|
+
* through describeCompactReadback().
|
|
213
|
+
*/
|
|
214
|
+
compact_readback?: string;
|
|
184
215
|
/**
|
|
185
216
|
* Body-size below which compaction efficiency degrades (envelope overhead
|
|
186
217
|
* dominates). Default 100 bytes.
|
|
@@ -445,6 +476,27 @@ export declare function projectComputeSaving(compute: DestinationComputeTerm, ro
|
|
|
445
476
|
/** What the fraction came from. Defaults to the curve's own basis. */
|
|
446
477
|
basis?: ComputeBasis;
|
|
447
478
|
}): ComputeSavingProjection;
|
|
479
|
+
/**
|
|
480
|
+
* The compact ratio a projection's `expected` leg uses: the measured total
|
|
481
|
+
* where the model carries one, else the band's midpoint.
|
|
482
|
+
*/
|
|
483
|
+
export declare function expectedCompactRatio(model: DestinationCostModel): number;
|
|
484
|
+
/**
|
|
485
|
+
* The compact figure as a reader sees it, basis attached: "62% smaller,
|
|
486
|
+
* measured once in ..." or "60-70% smaller, modeled, ...". Every tool that
|
|
487
|
+
* quotes a compact figure renders it through here, so none can quote a number
|
|
488
|
+
* without saying where it comes from. Null on a no-op destination.
|
|
489
|
+
*/
|
|
490
|
+
export declare function describeCompactFigure(model: DestinationCostModel): string | null;
|
|
491
|
+
/**
|
|
492
|
+
* How compact events read back on a destination, for any sentence that would
|
|
493
|
+
* otherwise say "losslessly" or "fully searchable": the verified limits where
|
|
494
|
+
* the destination has an expander, a no-op statement where it has none, and a
|
|
495
|
+
* destination-neutral clause when the destination is unknown or unmodeled.
|
|
496
|
+
*/
|
|
497
|
+
export declare function describeCompactReadback(dest?: string | null, opts?: {
|
|
498
|
+
esPruned?: boolean;
|
|
499
|
+
}): string;
|
|
448
500
|
export interface ProjectActionArgs {
|
|
449
501
|
action: Action;
|
|
450
502
|
bytes_in: number;
|
|
@@ -538,13 +590,19 @@ export declare function percentReduction(passBytes: number, actionBytes: number
|
|
|
538
590
|
* is unaware of the plan; this only prices the caller-selected one.
|
|
539
591
|
*/
|
|
540
592
|
export declare function resolveTierDownTier(model: DestinationCostModel, planSelector?: string | null): TierDownTargetTier | undefined;
|
|
593
|
+
/**
|
|
594
|
+
* tier_down's saving as a fraction of the standard ingest rate: the
|
|
595
|
+
* destination's list-price delta to its cheaper tier (CloudWatch IA 0.5,
|
|
596
|
+
* Datadog Flex 0.6, Azure Basic 0.78). 0 where no cheaper tier is priced.
|
|
597
|
+
*/
|
|
598
|
+
export declare function tierDownRateDelta(model: DestinationCostModel, planSelector?: string | null): number;
|
|
541
599
|
/**
|
|
542
600
|
* Project the destination cost of one (action, bytes_in) pair using the
|
|
543
|
-
* expected
|
|
601
|
+
* expected compact ratio for the destination (expectedCompactRatio).
|
|
544
602
|
*
|
|
545
603
|
* Examples:
|
|
546
604
|
* projectAction({ action:'compact', bytes_in:1e9, destination:'splunk' })
|
|
547
|
-
* → total_dollars ≈
|
|
605
|
+
* → total_dollars ≈ 0.3754 * ($6 + $0.10) ≈ $2.29, the measured 62.46% off.
|
|
548
606
|
* projectAction({ action:'compact', bytes_in:1e9, destination:'datadog' })
|
|
549
607
|
* → bytes_out === bytes_in, notes includes
|
|
550
608
|
* 'compact not supported on datadog'.
|
package/build/lib/cost.js
CHANGED
|
@@ -11,13 +11,21 @@
|
|
|
11
11
|
* uncertainty bands, and degrades savings for small events where
|
|
12
12
|
* envelope overhead dominates.
|
|
13
13
|
*
|
|
14
|
-
* Compact-ratio numbers
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* -
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
14
|
+
* Compact-ratio numbers, and where each comes from. The model's
|
|
15
|
+
* `compact_ratio_basis` carries the same statement into every output that
|
|
16
|
+
* quotes the figure:
|
|
17
|
+
* - Splunk: measured once, in Splunk's own licence meter (E21,
|
|
18
|
+
* log-10x/benchmarks#18, splunk-license/results/results.md). One
|
|
19
|
+
* OpenTelemetry demo capture, 214,841,731 licence-metered bytes without
|
|
20
|
+
* compact and 80,653,626 with it: 62.46% less. Per container 57.86% (ad)
|
|
21
|
+
* to 69.27% (opensearch). Modeled as 0.3073..0.4214, expected 0.3754.
|
|
22
|
+
* - Elasticsearch unpruned: measured once on disk (ES_ON_DISK_RATIO): one
|
|
23
|
+
* OpenTelemetry demo capture, 28.6 MB raw against 13.8 MB compact plus
|
|
24
|
+
* templates, 51.7% less, ES 8.17.0, nothing pruned from _source. Returned
|
|
25
|
+
* via getDestinationCostModel(dest, {esPruned:false}).
|
|
26
|
+
* - Elasticsearch pruned (compactable fields excluded from _source): no run.
|
|
27
|
+
* Carries the unpruned measurement as a floor and says so; pruning
|
|
28
|
+
* removes more, unmeasured.
|
|
21
29
|
* - Datadog/CW/Azure/GCP/Sumo/Coralogix/ClickHouse: no-op. compact_ratio =
|
|
22
30
|
* 1.0..1.0; a caveat is emitted by callers. On ClickHouse the reason is
|
|
23
31
|
* measured rather than structural: the text index and the column codecs
|
|
@@ -88,6 +96,17 @@ export function buildDisclosedDollarValue(value, source, siemLabel, listRatePerG
|
|
|
88
96
|
}
|
|
89
97
|
/** Internal alias used during the migration. Renderers should call buildDisclosedDollarValue. */
|
|
90
98
|
export const makeDisclosedDollar = buildDisclosedDollarValue;
|
|
99
|
+
/**
|
|
100
|
+
* The one Elasticsearch compact measurement, on disk in Elasticsearch's own
|
|
101
|
+
* store.size: an index of the raw capture against the compact events plus
|
|
102
|
+
* their template index, ES 8.17.0, best_compression, one segment, no replicas.
|
|
103
|
+
* The `message` field was replaced and nothing was pruned from _source. MB as
|
|
104
|
+
* recorded, one decimal (blog post cutting-elasticsearch-log-storage).
|
|
105
|
+
*/
|
|
106
|
+
const ES_ON_DISK_RATIO = (13.2 + 0.6) / 28.6; // 51.7% less
|
|
107
|
+
const ES_ON_DISK_BASIS = 'measured once on disk in Elasticsearch: one OpenTelemetry demo capture, 28.6 MB raw against ' +
|
|
108
|
+
'13.2 MB compact plus a 0.6 MB template index, 51.7% less (ES 8.17.0, best_compression, one ' +
|
|
109
|
+
'segment, no replicas)';
|
|
91
110
|
/**
|
|
92
111
|
* Per-destination cost & compaction model.
|
|
93
112
|
*
|
|
@@ -111,8 +130,31 @@ export const COST_MODEL_BY_DESTINATION = {
|
|
|
111
130
|
billing_basis: 'uncompressed-ingest',
|
|
112
131
|
compact_mode: 'envelope',
|
|
113
132
|
compact_requires: 'the 10x Splunk app installed (it auto-expands compacted events at search time)',
|
|
114
|
-
|
|
115
|
-
|
|
133
|
+
// Measured once, in Splunk's own licence meter (E21, log-10x/benchmarks#18,
|
|
134
|
+
// splunk-license/results/results.md): one OpenTelemetry demo capture
|
|
135
|
+
// indexed with and without compact, Splunk 10.4.3, Universal Forwarder.
|
|
136
|
+
// The expected figure is the whole run, template dictionary and the app's
|
|
137
|
+
// re-index of it included. The band is the per-container spread; the
|
|
138
|
+
// dictionary is not split per container, so each slice reads slightly
|
|
139
|
+
// better than it would deployed. This replaced 0.08..0.15, a band with no
|
|
140
|
+
// run behind it that the meter contradicts.
|
|
141
|
+
compact_ratio_low: 197_426 / 642_494, // 69.27% less, opensearch
|
|
142
|
+
compact_ratio_expected: 80_653_626 / 214_841_731, // 62.46% less, whole run
|
|
143
|
+
compact_ratio_high: 2_864_638 / 6_798_676, // 57.86% less, ad
|
|
144
|
+
compact_ratio_basis: {
|
|
145
|
+
short: "measured once in Splunk's licence meter on one OpenTelemetry capture, not on this estate",
|
|
146
|
+
full: "measured once in Splunk's own licence meter: one OpenTelemetry demo capture, 214,841,731 " +
|
|
147
|
+
'licence-metered bytes without compact and 80,653,626 with it, 62.46% less (Splunk 10.4.3, ' +
|
|
148
|
+
'log-10x/benchmarks#18); 57.86% to 69.27% per container. One capture, not a forecast for this ' +
|
|
149
|
+
'estate: log10x_measure_compaction reads the ratio off the stream itself',
|
|
150
|
+
},
|
|
151
|
+
// splunk-app default/props.conf: TRUNCATE = 262144 on tenx_encoded (#33).
|
|
152
|
+
// A longer compact event is cut by Splunk with no marker and rebuilds
|
|
153
|
+
// shorter. The search page loads no app JavaScript, so a search-bar query
|
|
154
|
+
// reaches the full text only wrapped in the app's tenxsearch command;
|
|
155
|
+
// classic dashboards go through its hook, alerts through Compile Alert.
|
|
156
|
+
compact_readback: 'on Splunk each event expands exactly up to 256 KB with the current 10x app (a longer one comes back cut), ' +
|
|
157
|
+
"and a search-bar query needs the app's tenxsearch command to see the full text",
|
|
116
158
|
small_event_floor_bytes: 100,
|
|
117
159
|
},
|
|
118
160
|
datadog: {
|
|
@@ -153,8 +195,25 @@ export const COST_MODEL_BY_DESTINATION = {
|
|
|
153
195
|
compact_mode: 'index-pruned',
|
|
154
196
|
compact_requires: 'the l1es plugin installed on your nodes, which auto-expands compacted events at query time (self-managed Elasticsearch 8.17.0; OpenSearch 2.19.0)',
|
|
155
197
|
tier_down_requires: 'frozen searchable snapshots — an Enterprise licence self-managed, or Gold+ on Elastic Cloud Hosted',
|
|
156
|
-
|
|
157
|
-
|
|
198
|
+
// The one Elasticsearch measurement, taken without pruning, stands in for
|
|
199
|
+
// the pruned mode as a floor: pruning removes more, and that is unmeasured.
|
|
200
|
+
// The unpruned variant (getDestinationCostModel) carries the same figure
|
|
201
|
+
// under its own basis. This replaced 0.30..0.40 here and 0.45..0.55
|
|
202
|
+
// unpruned, bands with no run behind them.
|
|
203
|
+
compact_ratio_low: ES_ON_DISK_RATIO,
|
|
204
|
+
compact_ratio_expected: ES_ON_DISK_RATIO,
|
|
205
|
+
compact_ratio_high: ES_ON_DISK_RATIO,
|
|
206
|
+
compact_ratio_basis: {
|
|
207
|
+
short: 'measured once on disk in Elasticsearch without pruning, on one OpenTelemetry capture, not on ' +
|
|
208
|
+
'this estate; pruning removes more, unmeasured',
|
|
209
|
+
full: `${ES_ON_DISK_BASIS}. That run pruned nothing from _source; pruning removes more and is ` +
|
|
210
|
+
'unmeasured, so for a pruned index this figure is a floor. One capture, not a forecast for this estate',
|
|
211
|
+
},
|
|
212
|
+
// elasticsearch-plugin: query_rewrite_enabled rewrites match, match_phrase
|
|
213
|
+
// and multi_match (so Kibana and KQL work); other query types reach the
|
|
214
|
+
// stored, encoded text. Carried to the unpruned variant by the spread.
|
|
215
|
+
compact_readback: 'on Elasticsearch the l1es plugin rebuilds each event, and match, match_phrase and multi_match queries ' +
|
|
216
|
+
'(so Kibana and KQL) search the full text while other query types see the encoded form',
|
|
158
217
|
small_event_floor_bytes: 100,
|
|
159
218
|
// Frozen tier via searchable snapshots. On Elastic Cloud Hosted the
|
|
160
219
|
// marked slice routes to its own index, ILM mounts it as
|
|
@@ -539,9 +598,9 @@ export function compactsInPlace(destination) {
|
|
|
539
598
|
/**
|
|
540
599
|
* Returns the cost model for a destination, with ES-unpruned override.
|
|
541
600
|
*
|
|
542
|
-
* ES
|
|
543
|
-
*
|
|
544
|
-
* `_source.excludes`.
|
|
601
|
+
* Both ES modes carry the one on-disk measurement (ES_ON_DISK_RATIO); they
|
|
602
|
+
* differ in the basis they state. Pruning detection is the caller's job:
|
|
603
|
+
* read the customer's index template or helm values for `_source.excludes`.
|
|
545
604
|
*
|
|
546
605
|
* @param dest destination SIEM id
|
|
547
606
|
* @param opts esPruned: when destination is 'elasticsearch' and this
|
|
@@ -582,8 +641,13 @@ export function getDestinationCostModel(dest, opts) {
|
|
|
582
641
|
return {
|
|
583
642
|
...base,
|
|
584
643
|
compact_mode: 'index-unpruned',
|
|
585
|
-
compact_ratio_low:
|
|
586
|
-
|
|
644
|
+
compact_ratio_low: ES_ON_DISK_RATIO,
|
|
645
|
+
compact_ratio_expected: ES_ON_DISK_RATIO,
|
|
646
|
+
compact_ratio_high: ES_ON_DISK_RATIO,
|
|
647
|
+
compact_ratio_basis: {
|
|
648
|
+
short: 'measured once on disk in Elasticsearch on one OpenTelemetry capture, not on this estate',
|
|
649
|
+
full: `${ES_ON_DISK_BASIS}. One capture, not a forecast for this estate`,
|
|
650
|
+
},
|
|
587
651
|
};
|
|
588
652
|
}
|
|
589
653
|
return base;
|
|
@@ -685,6 +749,49 @@ export function projectComputeSaving(compute, rowsKeptFraction, opts) {
|
|
|
685
749
|
function midpoint(a, b) {
|
|
686
750
|
return (a + b) / 2;
|
|
687
751
|
}
|
|
752
|
+
/**
|
|
753
|
+
* The compact ratio a projection's `expected` leg uses: the measured total
|
|
754
|
+
* where the model carries one, else the band's midpoint.
|
|
755
|
+
*/
|
|
756
|
+
export function expectedCompactRatio(model) {
|
|
757
|
+
return model.compact_ratio_expected ?? midpoint(model.compact_ratio_low, model.compact_ratio_high);
|
|
758
|
+
}
|
|
759
|
+
/**
|
|
760
|
+
* The compact figure as a reader sees it, basis attached: "62% smaller,
|
|
761
|
+
* measured once in ..." or "60-70% smaller, modeled, ...". Every tool that
|
|
762
|
+
* quotes a compact figure renders it through here, so none can quote a number
|
|
763
|
+
* without saying where it comes from. Null on a no-op destination.
|
|
764
|
+
*/
|
|
765
|
+
export function describeCompactFigure(model) {
|
|
766
|
+
if (model.compact_mode === 'no-op')
|
|
767
|
+
return null;
|
|
768
|
+
const less = (ratio) => Math.round((1 - ratio) * 100);
|
|
769
|
+
const figure = model.compact_ratio_expected !== undefined
|
|
770
|
+
? `${less(model.compact_ratio_expected)}% smaller`
|
|
771
|
+
: `${less(model.compact_ratio_high)}-${less(model.compact_ratio_low)}% smaller`;
|
|
772
|
+
return model.compact_ratio_basis ? `${figure}, ${model.compact_ratio_basis.short}` : figure;
|
|
773
|
+
}
|
|
774
|
+
const COMPACT_READBACK_UNKNOWN_DESTINATION = "how exactly each event reads back, and which searches see its full text, depends on the destination's expander";
|
|
775
|
+
/**
|
|
776
|
+
* How compact events read back on a destination, for any sentence that would
|
|
777
|
+
* otherwise say "losslessly" or "fully searchable": the verified limits where
|
|
778
|
+
* the destination has an expander, a no-op statement where it has none, and a
|
|
779
|
+
* destination-neutral clause when the destination is unknown or unmodeled.
|
|
780
|
+
*/
|
|
781
|
+
export function describeCompactReadback(dest, opts) {
|
|
782
|
+
if (!dest)
|
|
783
|
+
return COMPACT_READBACK_UNKNOWN_DESTINATION;
|
|
784
|
+
let model;
|
|
785
|
+
try {
|
|
786
|
+
model = getDestinationCostModel(dest.toLowerCase(), opts);
|
|
787
|
+
}
|
|
788
|
+
catch {
|
|
789
|
+
return COMPACT_READBACK_UNKNOWN_DESTINATION;
|
|
790
|
+
}
|
|
791
|
+
if (model.compact_mode === 'no-op')
|
|
792
|
+
return `compact is a no-op on ${dest}, where nothing expands the events`;
|
|
793
|
+
return model.compact_readback ?? COMPACT_READBACK_UNKNOWN_DESTINATION;
|
|
794
|
+
}
|
|
688
795
|
/**
|
|
689
796
|
* Compute reduction as a 0..100 percent. Always non-negative and clamped to
|
|
690
797
|
* 100. When passBytes is 0, returns 0 (nothing to reduce, no inflation).
|
|
@@ -729,6 +836,17 @@ export function resolveTierDownTier(model, planSelector) {
|
|
|
729
836
|
const all = [...(defaultTier ? [defaultTier] : []), ...alts];
|
|
730
837
|
return all.find((t) => t.name.toLowerCase().includes(needle)) ?? fallback;
|
|
731
838
|
}
|
|
839
|
+
/**
|
|
840
|
+
* tier_down's saving as a fraction of the standard ingest rate: the
|
|
841
|
+
* destination's list-price delta to its cheaper tier (CloudWatch IA 0.5,
|
|
842
|
+
* Datadog Flex 0.6, Azure Basic 0.78). 0 where no cheaper tier is priced.
|
|
843
|
+
*/
|
|
844
|
+
export function tierDownRateDelta(model, planSelector) {
|
|
845
|
+
const tier = resolveTierDownTier(model, planSelector);
|
|
846
|
+
if (!tier || model.ingest_per_gb <= 0)
|
|
847
|
+
return 0;
|
|
848
|
+
return Math.max(0, (model.ingest_per_gb - tier.ingest_rate_usd_per_gb) / model.ingest_per_gb);
|
|
849
|
+
}
|
|
732
850
|
function projectActionWithRatio(args, ratio, confidence) {
|
|
733
851
|
const model = getDestinationCostModel(args.destination, {
|
|
734
852
|
esPruned: args.esPruned,
|
|
@@ -795,6 +913,13 @@ function projectActionWithRatio(args, ratio, confidence) {
|
|
|
795
913
|
else {
|
|
796
914
|
const effective = degradeRatioForSmallEvents(ratio, args.avg_event_size_bytes, model.small_event_floor_bytes);
|
|
797
915
|
bytes_out = args.bytes_in * effective;
|
|
916
|
+
// The static band names its source, as the measured override above does.
|
|
917
|
+
if (model.compact_ratio_basis) {
|
|
918
|
+
const band = model.compact_ratio_low === model.compact_ratio_high
|
|
919
|
+
? ''
|
|
920
|
+
: ` (band ${model.compact_ratio_low.toFixed(3)}-${model.compact_ratio_high.toFixed(3)})`;
|
|
921
|
+
notes.push(`compact ratio ${expectedCompactRatio(model).toFixed(3)}${band}, ${model.compact_ratio_basis.short}`);
|
|
922
|
+
}
|
|
798
923
|
if (args.avg_event_size_bytes !== undefined &&
|
|
799
924
|
args.avg_event_size_bytes < model.small_event_floor_bytes) {
|
|
800
925
|
notes.push(`avg event size ${args.avg_event_size_bytes}B below floor ${model.small_event_floor_bytes}B; envelope overhead reduces savings`);
|
|
@@ -967,11 +1092,11 @@ function projectActionWithRatio(args, ratio, confidence) {
|
|
|
967
1092
|
}
|
|
968
1093
|
/**
|
|
969
1094
|
* Project the destination cost of one (action, bytes_in) pair using the
|
|
970
|
-
* expected
|
|
1095
|
+
* expected compact ratio for the destination (expectedCompactRatio).
|
|
971
1096
|
*
|
|
972
1097
|
* Examples:
|
|
973
1098
|
* projectAction({ action:'compact', bytes_in:1e9, destination:'splunk' })
|
|
974
|
-
* → total_dollars ≈
|
|
1099
|
+
* → total_dollars ≈ 0.3754 * ($6 + $0.10) ≈ $2.29, the measured 62.46% off.
|
|
975
1100
|
* projectAction({ action:'compact', bytes_in:1e9, destination:'datadog' })
|
|
976
1101
|
* → bytes_out === bytes_in, notes includes
|
|
977
1102
|
* 'compact not supported on datadog'.
|
|
@@ -980,8 +1105,7 @@ export function projectAction(args) {
|
|
|
980
1105
|
const model = getDestinationCostModel(args.destination, {
|
|
981
1106
|
esPruned: args.esPruned,
|
|
982
1107
|
});
|
|
983
|
-
|
|
984
|
-
return projectActionWithRatio(args, ratio, 'expected');
|
|
1108
|
+
return projectActionWithRatio(args, expectedCompactRatio(model), 'expected');
|
|
985
1109
|
}
|
|
986
1110
|
/**
|
|
987
1111
|
* Project low / expected / high savings using the destination's compact
|
|
@@ -996,7 +1120,7 @@ export function projectActionRange(args) {
|
|
|
996
1120
|
esPruned: args.esPruned,
|
|
997
1121
|
});
|
|
998
1122
|
const low = projectActionWithRatio(args, model.compact_ratio_high, 'low');
|
|
999
|
-
const expected = projectActionWithRatio(args,
|
|
1123
|
+
const expected = projectActionWithRatio(args, expectedCompactRatio(model), 'expected');
|
|
1000
1124
|
const high = projectActionWithRatio(args, model.compact_ratio_low, 'high');
|
|
1001
1125
|
const pct = percentReduction(args.bytes_in, {
|
|
1002
1126
|
// 'high' compact ratio means MORE bytes through, i.e. LESS reduction —
|
package/build/lib/cost.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cost.js","sourceRoot":"","sources":["../../src/lib/cost.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cost.js","sourceRoot":"","sources":["../../src/lib/cost.ts"],"names":[],"mappings":"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"}
|
package/build/lib/plan-solver.js
CHANGED
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
* - Scope is a set of services (or all). A pattern touching any scoped service
|
|
29
29
|
* is a candidate, weighted by its bytes in those services.
|
|
30
30
|
*/
|
|
31
|
-
import { getAvailableActions, getDestinationCostModel, compactsInPlace, projectAction, } from './cost.js';
|
|
31
|
+
import { getAvailableActions, getDestinationCostModel, compactsInPlace, describeCompactFigure, projectAction, } from './cost.js';
|
|
32
32
|
import { isProtectedSeverity } from './severity-policy.js';
|
|
33
33
|
/** True ladder order: keep-everything (in-SIEM before out) then lossy. */
|
|
34
34
|
const LADDER = ['compact', 'tier_down', 'offload', 'sample', 'drop'];
|
|
@@ -345,9 +345,9 @@ export function solvePlan(rawPatterns, opts) {
|
|
|
345
345
|
if (lever === 'tier_down' && model.tier_down_target_tier) {
|
|
346
346
|
structureParts.push(`${model.tier_down_target_tier.name} ingest ${rate(model.tier_down_target_tier.ingest_rate_usd_per_gb)}/GB`);
|
|
347
347
|
}
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
348
|
+
const compactFigure = lever === 'compact' ? describeCompactFigure(model) : null;
|
|
349
|
+
if (compactFigure)
|
|
350
|
+
structureParts.push(`compact ${compactFigure}`);
|
|
351
351
|
// Prerequisites for the levers this plan actually uses — not the menu.
|
|
352
352
|
const usedActions = new Set(planned.map((r) => r.action));
|
|
353
353
|
const prerequisites = [];
|