Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

enhancement(dev): Add dedicated dev tool #14990

Closed
wants to merge 19 commits into from
Closed

Conversation

ofek
Copy link
Contributor

@ofek ofek commented Oct 28, 2022

PoC start of a tooling revamp that will improve E2E environment management of integrations, reduce test times with smart selection, ease onboarding especially for Windows users, etc. similar to https://datadoghq.dev/integrations-core/ddev/cli/

Should eventually replace everything here https://github.com/vectordotdev/vector/tree/master/scripts


v

@bits-bot
Copy link

bits-bot commented Oct 28, 2022

CLA assistant check
All committers have signed the CLA.

@netlify
Copy link

netlify bot commented Oct 28, 2022

Deploy Preview for vector-project ready!

Name Link
🔨 Latest commit 5b68809
🔍 Latest deploy log https://app.netlify.com/sites/vector-project/deploys/63aaff542998bf00089f6401
😎 Deploy Preview https://deploy-preview-14990--vector-project.netlify.app/reports/lighthouse
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site settings.

@netlify
Copy link

netlify bot commented Oct 28, 2022

Deploy Preview for vrl-playground failed.

Name Link
🔨 Latest commit 5b68809
🔍 Latest deploy log https://app.netlify.com/sites/vrl-playground/deploys/63aaff542fd06b00097fff5f

@bruceg bruceg added the domain: dev Anything related to Vector's development environment label Oct 28, 2022
vdev/src/platform.rs Outdated Show resolved Hide resolved
vdev/src/app.rs Outdated Show resolved Hide resolved
vdev/src/commands/cli.rs Outdated Show resolved Hide resolved
vdev/src/commands/meta/starship.rs Outdated Show resolved Hide resolved
Comment on lines 30 to 39
command.arg("--features");
if !self.feature.is_empty() {
command.args([self.feature.join(",")]);
} else {
if app.platform.windows() {
command.arg("default-msvc");
} else {
command.arg("default");
}
};
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You may also find script/features interesting, to pull the required features out of a config file based on the components that are in use.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah nice, I will incorporate that soon

Copy link
Contributor

@neuronull neuronull left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice! I checked out the branch and played around with it a bit.

vdev/README.md Show resolved Hide resolved
vdev/README.md Show resolved Hide resolved
vdev/src/repo/git.rs Outdated Show resolved Hide resolved
vdev/src/repo/core.rs Outdated Show resolved Hide resolved
vdev/src/platform.rs Outdated Show resolved Hide resolved
vdev/src/commands/meta/starship.rs Outdated Show resolved Hide resolved
vdev/src/commands/config/cli.rs Outdated Show resolved Hide resolved
vdev/src/repo/mod.rs Outdated Show resolved Hide resolved
vdev exec ls
```

### Starship
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a really nice touch!

vdev/src/commands/exec.rs Outdated Show resolved Hide resolved
vdev/src/commands/exec.rs Show resolved Hide resolved
vdev/src/macros.rs Outdated Show resolved Hide resolved
vdev/src/macros.rs Outdated Show resolved Hide resolved
ofek and others added 4 commits November 9, 2022 12:14
if let Some(extra_args) = &self.args {
args.extend(extra_args.to_owned());

if !(self.container || extra_args.contains(&"--features".to_string())) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"blah"..to_string() is basically just "blah", so this should work:

Suggested change
if !(self.container || extra_args.contains(&"--features".to_string())) {
if !(self.container || extra_args.contains("--features")) {

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s

vdev/src/config.rs Outdated Show resolved Hide resolved
ofek and others added 2 commits November 16, 2022 09:35
Co-authored-by: Stephen Wakely <stephen@lisp.space>
@github-actions
Copy link

Regression Test Results

Baseline: 408b59e
Comparison: 953937b
Total vector CPUs: 7

Explanation

A regression test is an integrated performance test for vector in a repeatable rig, with varying configuration for vector. What follows is a statistical summary of a brief vector run for each configuration across SHAs given above. The goal of these tests are to determine, quickly, if vector performance is changed and to what degree by a pull request. Where appropriate units are scaled per-core.

The table below, if present, lists those experiments that have experienced a statistically significant change in their bytes_written_per_cpu_second performance between baseline and comparision SHAs, with 90.0% confidence OR have been detected as newly erratic. Negative values mean that baseline is faster, positive comparison. Results that do not exhibit more than a ±5% change in mean bytes_written_per_cpu_second are discarded. An experiment is erratic if its coefficient of variation is greater than 0.1. The abbreviated table will be omitted if no interesting changes are observed.

Changes in bytes_written_per_cpu_second with confidence ≥ 90.00% and absolute Δ mean >= ±5%:

experiment Δ mean Δ mean % confidence
datadog_agent_remap_datadog_logs 2.74MiB/CPU-s 9.00 100.00%
datadog_agent_remap_datadog_logs_acks 2.41MiB/CPU-s 7.96 100.00%
http_text_to_http_json -1.46MiB/CPU-s -5.80 100.00%
Fine details of change detection per experiment.
experiment Δ mean Δ mean % confidence baseline mean baseline stdev baseline stderr baseline outlier % baseline CoV comparison mean comparison stdev comparison stderr comparison outlier % comparison CoV erratic declared erratic
datadog_agent_remap_datadog_logs 2.74MiB/CPU-s 9.00 100.00% 30.47MiB/CPU-s 1.01MiB/CPU-s 13.39KiB/CPU-s 0.0 0.033225 33.21MiB/CPU-s 1.3MiB/CPU-s 17.18KiB/CPU-s 0.0 0.039153 False False
datadog_agent_remap_datadog_logs_acks 2.41MiB/CPU-s 7.96 100.00% 30.32MiB/CPU-s 1.27MiB/CPU-s 16.76KiB/CPU-s 0.0 0.041855 32.73MiB/CPU-s 1.05MiB/CPU-s 13.9KiB/CPU-s 0.0 0.032120 False False
syslog_regex_logs2metric_ddmetrics 194.97KiB/CPU-s 4.95 100.00% 3.85MiB/CPU-s 489.83KiB/CPU-s 6.32KiB/CPU-s 0.0 0.124282 4.04MiB/CPU-s 546.79KiB/CPU-s 7.06KiB/CPU-s 0.0 0.132194 True False
syslog_log2metric_humio_metrics 137.2KiB/CPU-s 2.46 100.00% 5.45MiB/CPU-s 165.59KiB/CPU-s 2.14KiB/CPU-s 0.0 0.029669 5.58MiB/CPU-s 129.93KiB/CPU-s 1.68KiB/CPU-s 0.0 0.022722 False False
syslog_log2metric_splunk_hec_metrics 79.21KiB/CPU-s 0.83 100.00% 9.3MiB/CPU-s 129.94KiB/CPU-s 1.68KiB/CPU-s 0.0 0.013639 9.38MiB/CPU-s 109.2KiB/CPU-s 1.41KiB/CPU-s 0.0 0.011367 False False
splunk_hec_indexer_ack_blackhole 2.52KiB/CPU-s 0.02 42.02% 13.62MiB/CPU-s 255.55KiB/CPU-s 3.3KiB/CPU-s 0.0 0.018327 13.62MiB/CPU-s 243.29KiB/CPU-s 3.14KiB/CPU-s 0.0 0.017445 False False
http_to_http_noack 1.51KiB/CPU-s 0.01 30.20% 13.62MiB/CPU-s 229.99KiB/CPU-s 2.97KiB/CPU-s 0.0 0.016489 13.62MiB/CPU-s 194.51KiB/CPU-s 2.51KiB/CPU-s 0.0 0.013943 False False
splunk_hec_to_splunk_hec_logs_acks 1.22KiB/CPU-s 0.01 14.41% 13.61MiB/CPU-s 374.0KiB/CPU-s 4.82KiB/CPU-s 0.0 0.026824 13.62MiB/CPU-s 359.58KiB/CPU-s 4.64KiB/CPU-s 0.0 0.025788 False False
enterprise_http_to_http 318.04B/CPU-s 0.00 8.95% 13.62MiB/CPU-s 151.66KiB/CPU-s 1.96KiB/CPU-s 0.0 0.010870 13.62MiB/CPU-s 150.86KiB/CPU-s 1.95KiB/CPU-s 0.0 0.010812 False False
splunk_hec_to_splunk_hec_logs_noack 52.06B/CPU-s 0.00 0.90% 13.62MiB/CPU-s 247.48KiB/CPU-s 3.19KiB/CPU-s 0.0 0.017746 13.62MiB/CPU-s 247.39KiB/CPU-s 3.19KiB/CPU-s 0.0 0.017740 False False
http_to_http_json 322.22B/CPU-s 0.00 6.58% 13.62MiB/CPU-s 208.67KiB/CPU-s 2.69KiB/CPU-s 0.0 0.014956 13.62MiB/CPU-s 209.1KiB/CPU-s 2.7KiB/CPU-s 0.0 0.014987 False False
file_to_blackhole -15.16KiB/CPU-s -0.03 51.30% 54.5MiB/CPU-s 1.11MiB/CPU-s 14.62KiB/CPU-s 0.0 0.020325 54.48MiB/CPU-s 1.23MiB/CPU-s 16.18KiB/CPU-s 0.0 0.022499 False False
fluent_elasticsearch -19.05KiB/CPU-s -0.04 98.13% 45.41MiB/CPU-s 30.23KiB/CPU-s 395.66B/CPU-s 0.0 0.000650 45.4MiB/CPU-s 633.42KiB/CPU-s 8.09KiB/CPU-s 0.0 0.013625 False False
syslog_splunk_hec_logs -46.21KiB/CPU-s -0.50 100.00% 9.1MiB/CPU-s 255.2KiB/CPU-s 3.3KiB/CPU-s 0.0 0.027379 9.06MiB/CPU-s 176.8KiB/CPU-s 2.28KiB/CPU-s 0.0 0.019063 False False
http_pipelines_blackhole_acks -3.35KiB/CPU-s -0.53 100.00% 636.3KiB/CPU-s 20.51KiB/CPU-s 271.14B/CPU-s 0.0 0.032236 632.96KiB/CPU-s 23.59KiB/CPU-s 311.68B/CPU-s 0.0 0.037265 False False
syslog_loki -53.39KiB/CPU-s -0.60 100.00% 8.65MiB/CPU-s 310.44KiB/CPU-s 4.01KiB/CPU-s 0.0 0.035049 8.6MiB/CPU-s 290.9KiB/CPU-s 3.76KiB/CPU-s 0.0 0.033042 False False
http_pipelines_blackhole -6.0KiB/CPU-s -0.68 100.00% 881.24KiB/CPU-s 6.23KiB/CPU-s 82.38B/CPU-s 0.0 0.007065 875.24KiB/CPU-s 25.65KiB/CPU-s 339.12B/CPU-s 0.0 0.029309 False False
splunk_hec_route_s3 -79.8KiB/CPU-s -0.70 100.00% 11.15MiB/CPU-s 508.97KiB/CPU-s 6.57KiB/CPU-s 0.0 0.044558 11.08MiB/CPU-s 500.98KiB/CPU-s 6.47KiB/CPU-s 0.0 0.044167 False False
http_pipelines_no_grok_blackhole -64.98KiB/CPU-s -1.03 100.00% 6.16MiB/CPU-s 69.96KiB/CPU-s 924.84B/CPU-s 0.0 0.011090 6.1MiB/CPU-s 55.08KiB/CPU-s 728.26B/CPU-s 0.0 0.008823 False False
syslog_humio_logs -114.04KiB/CPU-s -1.20 100.00% 9.26MiB/CPU-s 176.19KiB/CPU-s 2.27KiB/CPU-s 0.0 0.018584 9.15MiB/CPU-s 164.87KiB/CPU-s 2.13KiB/CPU-s 0.0 0.017603 False False
http_to_http_acks -71.45KiB/CPU-s -1.31 83.00% 5.34MiB/CPU-s 2.79MiB/CPU-s 36.85KiB/CPU-s 0.0 0.521976 5.27MiB/CPU-s 2.78MiB/CPU-s 36.79KiB/CPU-s 0.0 0.527756 True False
socket_to_socket_blackhole -199.36KiB/CPU-s -1.43 100.00% 13.58MiB/CPU-s 204.32KiB/CPU-s 2.64KiB/CPU-s 0.0 0.014695 13.38MiB/CPU-s 129.29KiB/CPU-s 1.67KiB/CPU-s 0.0 0.009434 False False
datadog_agent_remap_blackhole -604.63KiB/CPU-s -1.90 100.00% 31.12MiB/CPU-s 464.63KiB/CPU-s 6.0KiB/CPU-s 0.0 0.014581 30.53MiB/CPU-s 901.38KiB/CPU-s 11.63KiB/CPU-s 0.0 0.028833 False False
datadog_agent_remap_blackhole_acks -647.78KiB/CPU-s -2.03 100.00% 31.21MiB/CPU-s 379.6KiB/CPU-s 4.9KiB/CPU-s 0.0 0.011876 30.58MiB/CPU-s 1.26MiB/CPU-s 16.69KiB/CPU-s 0.0 0.041277 False False
otlp_grpc_to_blackhole -25.38KiB/CPU-s -2.58 100.00% 984.29KiB/CPU-s 41.83KiB/CPU-s 552.88B/CPU-s 0.0 0.042490 958.92KiB/CPU-s 44.49KiB/CPU-s 587.84B/CPU-s 0.0 0.046387 False False
otlp_http_to_blackhole -43.19KiB/CPU-s -2.88 100.00% 1.47MiB/CPU-s 124.31KiB/CPU-s 1.6KiB/CPU-s 0.0 0.082756 1.42MiB/CPU-s 136.11KiB/CPU-s 1.76KiB/CPU-s 0.0 0.093292 False False
http_text_to_http_json -1.46MiB/CPU-s -5.80 100.00% 25.12MiB/CPU-s 557.83KiB/CPU-s 7.2KiB/CPU-s 0.0 0.021685 23.66MiB/CPU-s 476.64KiB/CPU-s 6.16KiB/CPU-s 0.0 0.019670 False False

@github-actions
Copy link

Soak Test Results

Baseline: 408b59e
Comparison: 953937b
Total Vector CPUs: 4

Explanation

A soak test is an integrated performance test for vector in a repeatable rig, with varying configuration for vector. What follows is a statistical summary of a brief vector run for each configuration across SHAs given above. The goal of these tests are to determine, quickly, if vector performance is changed and to what degree by a pull request. Where appropriate units are scaled per-core.

The table below, if present, lists those experiments that have experienced a statistically significant change in their throughput performance between baseline and comparision SHAs, with 90.0% confidence OR have been detected as newly erratic. Negative values mean that baseline is faster, positive comparison. Results that do not exhibit more than a ±8.87% change in mean throughput are discarded. An experiment is erratic if its coefficient of variation is greater than 0.3. The abbreviated table will be omitted if no interesting changes are observed.

No interesting changes in throughput with confidence ≥ 90.00% and absolute Δ mean >= ±8.87%:

Fine details of change detection per experiment.
experiment Δ mean Δ mean % confidence baseline mean baseline stdev baseline stderr baseline outlier % baseline CoV comparison mean comparison stdev comparison stderr comparison outlier % comparison CoV erratic declared erratic
datadog_agent_remap_datadog_logs_acks 4.86MiB 8.71 100.00% 55.79MiB 3.3MiB 68.85KiB 0 0.059123 60.65MiB 4.26MiB 88.65KiB 0 0.0702034 False False
datadog_agent_remap_datadog_logs 4.46MiB 7.99 100.00% 55.84MiB 326.93KiB 6.69KiB 0 0.00571665 60.3MiB 4.1MiB 85.37KiB 0 0.0679838 False False
syslog_regex_logs2metric_ddmetrics 354.49KiB 4.58 100.00% 7.55MiB 922.84KiB 18.81KiB 0 0.119326 7.9MiB 748.46KiB 15.26KiB 0 0.0925358 False False
syslog_splunk_hec_logs 218.51KiB 1.35 100.00% 15.8MiB 725.61KiB 14.76KiB 0 0.0448389 16.01MiB 595.71KiB 12.15KiB 0 0.036321 False False
syslog_log2metric_humio_metrics 86.67KiB 0.9 100.00% 9.4MiB 183.79KiB 3.75KiB 0 0.019081 9.49MiB 325.93KiB 6.64KiB 0 0.0335358 False False
http_to_http_acks 47.41KiB 0.5 28.09% 9.27MiB 4.51MiB 94.32KiB 0 0.486815 9.31MiB 4.39MiB 92.06KiB 0 0.471001 True True
syslog_humio_logs 58.64KiB 0.35 100.00% 16.25MiB 133.36KiB 2.72KiB 0 0.00801508 16.3MiB 126.62KiB 2.59KiB 0 0.00758354 False False
http_pipelines_blackhole_acks 10.16KiB 0.3 75.14% 3.32MiB 347.12KiB 7.06KiB 0 0.102069 3.33MiB 258.89KiB 5.27KiB 0 0.0758984 False False
file_to_blackhole 72.5KiB 0.07 65.53% 95.34MiB 2.56MiB 53.06KiB 0 0.026842 95.41MiB 2.66MiB 55.39KiB 0 0.0278857 False False
splunk_hec_to_splunk_hec_logs_noack 5.15KiB 0.02 37.64% 23.83MiB 380.78KiB 7.78KiB 0 0.0155985 23.84MiB 344.47KiB 7.03KiB 0 0.0141082 False False
splunk_hec_indexer_ack_blackhole -1.18KiB -0 4.29% 23.77MiB 749.56KiB 15.25KiB 0 0.030787 23.77MiB 768.82KiB 15.64KiB 0 0.0315793 False False
enterprise_http_to_http -3.95KiB -0.02 40.21% 23.84MiB 258.96KiB 5.29KiB 0 0.0106036 23.84MiB 259.54KiB 5.31KiB 0 0.0106293 False False
splunk_hec_to_splunk_hec_logs_acks -9.62KiB -0.04 31.75% 23.76MiB 802.62KiB 16.33KiB 0 0.0329843 23.75MiB 832.63KiB 16.93KiB 0 0.0342311 False False
datadog_agent_remap_blackhole -36.39KiB -0.06 31.92% 56.35MiB 3.8MiB 79.14KiB 0 0.0673929 56.32MiB 1.89MiB 39.53KiB 0 0.0336038 False False
http_to_http_noack -40.32KiB -0.17 97.23% 23.83MiB 405.99KiB 8.3KiB 0 0.016632 23.79MiB 800.73KiB 16.32KiB 0 0.032857 False False
http_to_http_json -51.57KiB -0.21 99.99% 23.85MiB 368.57KiB 7.52KiB 0 0.0150882 23.8MiB 537.46KiB 10.95KiB 0 0.0220487 False False
datadog_agent_remap_blackhole_acks -287.54KiB -0.48 99.79% 58.06MiB 3.7MiB 77.08KiB 0 0.0637158 57.78MiB 2.52MiB 52.65KiB 0 0.0435363 False False
fluent_elasticsearch -391.83KiB -0.48 100.00% 79.47MiB 53.35KiB 1.04KiB 0 0.000655391 79.09MiB 4.11MiB 81.36KiB 0 0.0519578 False False
socket_to_socket_blackhole -146.09KiB -0.6 100.00% 23.91MiB 1.1MiB 22.91KiB 0 0.0460324 23.77MiB 1.07MiB 22.21KiB 0 0.044872 False False
splunk_hec_route_s3 -140.9KiB -0.64 99.92% 21.49MiB 1.4MiB 29.1KiB 0 0.0649725 21.35MiB 1.44MiB 30.0KiB 0 0.0673622 False False
syslog_log2metric_splunk_hec_metrics -110.84KiB -0.67 100.00% 16.21MiB 603.26KiB 12.29KiB 0 0.036342 16.1MiB 913.39KiB 18.59KiB 0 0.0553953 False False
http_pipelines_blackhole -31.4KiB -0.67 100.00% 4.55MiB 109.88KiB 2.25KiB 0 0.0235529 4.52MiB 279.89KiB 5.7KiB 0 0.060402 False False
http_pipelines_no_grok_blackhole -82.02KiB -0.75 99.99% 10.69MiB 44.72KiB 935.07B 0 0.00408474 10.61MiB 1.03MiB 21.36KiB 0 0.0966807 False False
otlp_http_to_blackhole -26.73KiB -1.03 99.70% 2.54MiB 317.14KiB 6.45KiB 0 0.121918 2.51MiB 309.14KiB 6.29KiB 0 0.120078 False False
syslog_loki -183.84KiB -1.16 100.00% 15.52MiB 272.22KiB 5.57KiB 0 0.0171299 15.34MiB 749.26KiB 15.23KiB 0 0.0477005 False False
otlp_grpc_to_blackhole -46.67KiB -2.74 100.00% 1.66MiB 54.53KiB 1.12KiB 0 0.0320031 1.62MiB 136.04KiB 2.77KiB 0 0.0820884 False False
http_text_to_http_json -2.29MiB -5.48 100.00% 41.84MiB 680.45KiB 13.89KiB 0 0.0158792 39.54MiB 676.07KiB 13.81KiB 0 0.0166923 False False

@ofek
Copy link
Contributor Author

ofek commented Dec 15, 2022

Any update on this?

@spencergilbert
Copy link
Contributor

🤔 I thought we had merged it? or was that just the RFC? My assumption was they were a "package" and we'd merge both - @jszwedko is this good to merge?

vdev/src/commands/cli.rs Outdated Show resolved Hide resolved
@jszwedko
Copy link
Member

Bruce had some thoughts about making the definitions of integration tests a bit less verbose that he was going to explore in a separate branch for comparison.

Copy link
Member

@bruceg bruceg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With the exception of integration testing as a set of external executables, I approve of this approach. I left a number of comments about smaller issues below, and will be tackling some of the code refactoring work myself in another branch.

} else {
match env::current_dir() {
Ok(p) => p.display().to_string(),
Err(_) => ".".to_string(),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is a failure to determine the current working directory papered over here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

. works fine as a fallback

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If . works as a fallback, do we need the full path at all?

Comment on lines 39 to 51
pub const fn windows() -> bool {
cfg!(target_os = "windows")
}

#[allow(dead_code)]
pub const fn macos() -> bool {
cfg!(target_os = "macos")
}

#[allow(dead_code)]
pub const fn unix() -> bool {
cfg!(not(any(target_os = "windows", target_os = "macos")))
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think these add much value over using the appropriate cfg directly. That is, platform::windows() is not less cognitive overhead over cfg!(windows) (the target_os is unnecessary here, and we have standardized on not using it #15000). This is particularly true in places where we can outright skip emitting the code with #[cfg(windows)].

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cfg!(windows) (the target_os is unnecessary here, and we have standardized on not using it #15000)

Fixed!

I don't think these add much value over using the appropriate cfg directly.

From experience I think this is much easier and less error-prone than cfg peppered everywhere, especially when there is need to be specific like Debian or Fedora. Let me know what you would like me to do.

vdev/src/platform.rs Outdated Show resolved Hide resolved
vdev/src/app.rs Show resolved Hide resolved
progress_bar.set_style(
ProgressStyle::with_template("{spinner} {msg:.magenta.bold}")?
// https://github.com/sindresorhus/cli-spinners/blob/master/spinners.json
.tick_strings(&["∙∙∙", "●∙∙", "∙●∙", "∙∙●", "∙∙∙"]),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see ∙∙∙ is repeated twice here. Is that intentional?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yup that's correct as you can see in the link

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not seeing it. All the strings I'm seeing at that link don't have any repeats.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

vdev/src/commands/test.rs Outdated Show resolved Hide resolved
vdev/src/config.rs Show resolved Hide resolved
vdev/src/commands/cli.rs Outdated Show resolved Hide resolved
Comment on lines 35 to 38
let mut command = Command::new("cargo");
command.current_dir(&test_dir);
command.env(NETWORK_ENV_VAR, runner.network_name());
command.args(["run", "--quiet", "--", "start"]);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As outlined separately, I'm not a big fan of the external process model to run integrations. I'll see what I can do to work up a more integrated alternative.

Edit: Actually, that's not quite right. The external process might be fine here, and may simplify separation of responsibilities in the end. It's the model of each integration test requiring its own crate and executable that I'm opposed to.

vdev/src/macros.rs Show resolved Hide resolved
@github-actions
Copy link

Regression Test Results

Run ID: 97c8d4c9-e109-4572-9ff3-adadac228220
Baseline: 859fe61
Comparison: 5b68809
Total vector CPUs: 7

Explanation

A regression test is an integrated performance test for vector in a repeatable rig, with varying configuration for vector. What follows is a statistical summary of a brief vector run for each configuration across SHAs given above. The goal of these tests are to determine, quickly, if vector performance is changed and to what degree by a pull request. Where appropriate units are scaled per-core.

The table below, if present, lists those experiments that have experienced a statistically significant change in their bytes_written_per_cpu_second performance between baseline and comparision SHAs, with 90.0% confidence OR have been detected as newly erratic. Negative values mean that baseline is faster, positive comparison. Results that do not exhibit more than a ±5% change in mean bytes_written_per_cpu_second are discarded. An experiment is erratic if its coefficient of variation is greater than 0.1. The abbreviated table will be omitted if no interesting changes are observed.

Changes in bytes_written_per_cpu_second with confidence ≥ 90.00% and absolute Δ mean >= ±5%:

experiment Δ mean Δ mean % confidence
syslog_humio_logs 547.98KiB/CPU-s 6.12 100.00%
http_text_to_http_json -1.49MiB/CPU-s -5.96 100.00%
otlp_http_to_blackhole -122.48KiB/CPU-s -7.77 100.00%
splunk_hec_route_s3 -994.63KiB/CPU-s -8.15 100.00%
otlp_grpc_to_blackhole -87.19KiB/CPU-s -8.32 100.00%
syslog_log2metric_humio_metrics -554.19KiB/CPU-s -9.09 100.00%
Fine details of change detection per experiment.
experiment Δ mean Δ mean % confidence baseline mean baseline stdev baseline stderr baseline outlier % baseline CoV comparison mean comparison stdev comparison stderr comparison outlier % comparison CoV erratic declared erratic
syslog_humio_logs 547.98KiB/CPU-s 6.12 100.00% 8.74MiB/CPU-s 186.91KiB/CPU-s 2.41KiB/CPU-s 0.0 0.020888 9.27MiB/CPU-s 69.81KiB/CPU-s 922.88B/CPU-s 0.0 0.007351 False False
syslog_regex_logs2metric_ddmetrics 152.98KiB/CPU-s 3.95 100.00% 3.79MiB/CPU-s 448.28KiB/CPU-s 5.79KiB/CPU-s 0.0 0.115638 3.93MiB/CPU-s 526.22KiB/CPU-s 6.79KiB/CPU-s 0.0 0.130589 True False
syslog_loki 275.62KiB/CPU-s 3.19 100.00% 8.43MiB/CPU-s 171.22KiB/CPU-s 2.21KiB/CPU-s 0.0 0.019841 8.7MiB/CPU-s 148.61KiB/CPU-s 1.92KiB/CPU-s 0.0 0.016688 False False
syslog_log2metric_splunk_hec_metrics 249.21KiB/CPU-s 2.68 100.00% 9.1MiB/CPU-s 174.9KiB/CPU-s 2.26KiB/CPU-s 0.0 0.018775 9.34MiB/CPU-s 163.17KiB/CPU-s 2.11KiB/CPU-s 0.0 0.017059 False False
syslog_splunk_hec_logs 217.54KiB/CPU-s 2.42 100.00% 8.78MiB/CPU-s 135.55KiB/CPU-s 1.75KiB/CPU-s 0.0 0.015082 8.99MiB/CPU-s 206.62KiB/CPU-s 2.67KiB/CPU-s 0.0 0.022446 False False
datadog_agent_remap_datadog_logs_acks 478.7KiB/CPU-s 1.41 100.00% 33.17MiB/CPU-s 1.1MiB/CPU-s 14.52KiB/CPU-s 0.0 0.033128 33.64MiB/CPU-s 747.74KiB/CPU-s 9.65KiB/CPU-s 0.0 0.021708 False False
http_to_http_acks 20.31KiB/CPU-s 0.38 30.66% 5.23MiB/CPU-s 2.73MiB/CPU-s 36.01KiB/CPU-s 0.0 0.52146 5.25MiB/CPU-s 2.79MiB/CPU-s 36.85KiB/CPU-s 0.0 0.531596 True False
enterprise_http_to_http 11.2KiB/CPU-s 0.08 96.24% 13.61MiB/CPU-s 369.12KiB/CPU-s 4.76KiB/CPU-s 0.0 0.026481 13.62MiB/CPU-s 194.71KiB/CPU-s 2.51KiB/CPU-s 0.0 0.013958 False False
splunk_hec_to_splunk_hec_logs_noack 2.55KiB/CPU-s 0.02 50.61% 13.62MiB/CPU-s 211.95KiB/CPU-s 2.74KiB/CPU-s 0.0 0.015192 13.63MiB/CPU-s 195.71KiB/CPU-s 2.53KiB/CPU-s 0.0 0.014026 False False
splunk_hec_to_splunk_hec_logs_acks 2.83KiB/CPU-s 0.02 33.40% 13.61MiB/CPU-s 362.52KiB/CPU-s 4.68KiB/CPU-s 0.0 0.026002 13.62MiB/CPU-s 355.72KiB/CPU-s 4.59KiB/CPU-s 0.0 0.02551 False False
fluent_elasticsearch 40.95B/CPU-s 0.0 5.83% 45.41MiB/CPU-s 30.07KiB/CPU-s 393.09B/CPU-s 0.0 0.000647 45.41MiB/CPU-s 30.48KiB/CPU-s 398.4B/CPU-s 0.0 0.000655 False False
http_to_http_json 396.7B/CPU-s 0.0 8.02% 13.62MiB/CPU-s 208.07KiB/CPU-s 2.68KiB/CPU-s 0.0 0.014915 13.62MiB/CPU-s 213.65KiB/CPU-s 2.76KiB/CPU-s 0.0 0.015315 False False
splunk_hec_indexer_ack_blackhole -569.26B/CPU-s -0.0 9.54% 13.62MiB/CPU-s 250.64KiB/CPU-s 3.23KiB/CPU-s 0.0 0.017973 13.62MiB/CPU-s 258.01KiB/CPU-s 3.33KiB/CPU-s 0.0 0.018503 False False
file_to_blackhole -5.21KiB/CPU-s -0.01 19.61% 54.5MiB/CPU-s 1.1MiB/CPU-s 14.57KiB/CPU-s 0.0 0.020236 54.49MiB/CPU-s 1.15MiB/CPU-s 15.12KiB/CPU-s 0.0 0.021019 False False
http_to_http_noack -8.3KiB/CPU-s -0.06 85.59% 13.62MiB/CPU-s 259.03KiB/CPU-s 3.34KiB/CPU-s 0.0 0.018574 13.61MiB/CPU-s 356.41KiB/CPU-s 4.6KiB/CPU-s 0.0 0.025572 False False
datadog_agent_remap_datadog_logs -446.17KiB/CPU-s -1.29 100.00% 33.82MiB/CPU-s 1.11MiB/CPU-s 14.62KiB/CPU-s 0.0 0.032722 33.38MiB/CPU-s 1.44MiB/CPU-s 19.03KiB/CPU-s 0.0 0.043149 False False
datadog_agent_remap_blackhole_acks -459.07KiB/CPU-s -1.45 100.00% 30.91MiB/CPU-s 810.29KiB/CPU-s 10.46KiB/CPU-s 0.0 0.025598 30.46MiB/CPU-s 783.68KiB/CPU-s 10.12KiB/CPU-s 0.0 0.025122 False False
datadog_agent_remap_blackhole -487.49KiB/CPU-s -1.52 100.00% 31.22MiB/CPU-s 712.51KiB/CPU-s 9.2KiB/CPU-s 0.0 0.022286 30.74MiB/CPU-s 659.04KiB/CPU-s 8.51KiB/CPU-s 0.0 0.020933 False False
socket_to_socket_blackhole -281.55KiB/CPU-s -2.01 100.00% 13.66MiB/CPU-s 92.31KiB/CPU-s 1.19KiB/CPU-s 0.0 0.006599 13.38MiB/CPU-s 118.52KiB/CPU-s 1.53KiB/CPU-s 0.0 0.008647 False False
http_text_to_http_json -1.49MiB/CPU-s -5.96 100.00% 25.0MiB/CPU-s 564.58KiB/CPU-s 7.29KiB/CPU-s 0.0 0.02205 23.51MiB/CPU-s 530.94KiB/CPU-s 6.85KiB/CPU-s 0.0 0.02205 False False
otlp_http_to_blackhole -122.48KiB/CPU-s -7.77 100.00% 1.54MiB/CPU-s 108.05KiB/CPU-s 1.39KiB/CPU-s 0.0 0.06857 1.42MiB/CPU-s 142.35KiB/CPU-s 1.84KiB/CPU-s 0.0 0.09795 False False
splunk_hec_route_s3 -994.63KiB/CPU-s -8.15 100.00% 11.92MiB/CPU-s 524.13KiB/CPU-s 6.76KiB/CPU-s 0.0 0.042937 10.95MiB/CPU-s 552.88KiB/CPU-s 7.13KiB/CPU-s 0.0 0.04931 False False
otlp_grpc_to_blackhole -87.19KiB/CPU-s -8.32 100.00% 1.02MiB/CPU-s 46.93KiB/CPU-s 620.23B/CPU-s 0.0 0.044764 961.17KiB/CPU-s 48.25KiB/CPU-s 637.4B/CPU-s 0.0 0.050193 False False
syslog_log2metric_humio_metrics -554.19KiB/CPU-s -9.09 100.00% 5.95MiB/CPU-s 140.49KiB/CPU-s 1.81KiB/CPU-s 0.0 0.023053 5.41MiB/CPU-s 212.13KiB/CPU-s 2.74KiB/CPU-s 0.0 0.038294 False False

@bruceg
Copy link
Member

bruceg commented Jan 23, 2023

Completed in #15833

@bruceg bruceg closed this Jan 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain: dev Anything related to Vector's development environment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants