Commit Graph

552 Commits

Author SHA1 Message Date
Nikita Kudrin
fe56e465d6 [starter metrics] Provide a dedicated metrics publisher by default from starter
GitOrigin-RevId: 4484df0f005fb7c66e9c3cd81dfbf74974f49b33
2024-07-31 16:44:53 +00:00
Andrei Efanov
e0d5099ad0 [otel] refactor: remove redundant opentelemetry runWithSpan util
GitOrigin-RevId: cce13fe529ecdb1aeb5b70af37f7d6fb505696e5
2024-07-31 12:05:46 +00:00
Andrei Efanov
177123caaa [otel] refactor: remove redundant opentelemetry computeWithSpanAttribute util
GitOrigin-RevId: bf668f0228930467b99f6b9a60907370204b5116
2024-07-31 12:05:45 +00:00
Jan Kleprlik
3af8e677d8 [benchmarks] fix typo
GitOrigin-RevId: 44d07b9287c100f09a1cee1a91efc05556ba5322
2024-07-30 15:51:16 +00:00
Nikita Kudrin
508244fa66 [ijent benchmarks] AT-876 Benchmark test on newByteChannel
GitOrigin-RevId: 0e7da059b819d14d135e11a2eb7da3f18bd13ee2
2024-07-30 13:08:41 +00:00
Maxim.Kolmakov
2662c6b2b4 cleanup comments
GitOrigin-RevId: d6cc18fe94f8ce0adc8328dc0effb54ed68fe89a
2024-07-30 10:54:33 +00:00
Maxim.Kolmakov
71d7f0f502 [opentelemetry] In case durationNano is missing, fallback to duration which is in ms
GitOrigin-RevId: 51158b5a1afd1aab04259410bd625f7d453a8638
2024-07-30 09:37:55 +00:00
Nikita Kudrin
1069988572 [starter] IJ-CR-138489 Merge two implementations of percentile calculation
GitOrigin-RevId: 36417657b1c733adb36613dd28d3e61f5d6aa443
2024-07-26 13:43:23 +00:00
Nikita Kudrin
2b3114943b [starter] IJ-CR-138489 moving mapConcurrently
GitOrigin-RevId: 46f2af9b562487c94e5e95c211e77b34a457b9d0
2024-07-26 13:43:23 +00:00
Nikita Kudrin
c13c5fc433 [telemetry] IJ-CR-139130 Review fixes
GitOrigin-RevId: 9878000a3aaac251ef73a2cef4581db2e657aeeb
2024-07-26 13:43:23 +00:00
Nikita Kudrin
e439da09f9 [telemetry] IJ-CR-140721 Naming
GitOrigin-RevId: e0b09a824c3a4264e44659d4e1d848e9d2c5bca9
2024-07-26 11:07:09 +00:00
Nikita Kudrin
cdf91bf213 [benchmarks] Renaming PerformanceTest* => Benchmark*
GitOrigin-RevId: 9963b84d51e1062acc262a8d3d3de1409a708e3b
2024-07-23 18:20:01 +00:00
Nikita Kudrin
e7429a5265 [benchmarks] Implementing reset for telemetry exporters
GitOrigin-RevId: 654ed95a45602685d61fc614ca496e13b59682fd
2024-07-23 12:55:47 +00:00
Vladimir Krivosheev
f1534f6d58 cleanup (remove unused executeWithRetry)
GitOrigin-RevId: 7f2665ba898482a28b24551decb33dcf93c28a04
2024-07-22 21:07:43 +00:00
Vera Petrenkova
69f7976225 IJPL-158018 support localization without restart application
GitOrigin-RevId: 005f0b5daac1c665b7e73e7f412cbc63f24adc96
2024-07-17 11:00:16 +00:00
Maxim.Kolmakov
c9782abeaa [starter] Apply transform also to JSON meter
GitOrigin-RevId: 1d4fdd1ba5289338612c1c86acaab1d82bca8645
2024-07-15 10:29:28 +00:00
Maxim.Kolmakov
675565645b [starter][driver] Provide method to perform transform on "raw" data instead of metric
From CSV/JSON meter we often get ns and convert to ms after that but ns doesn't fit into integer so we have to transform initial values and not converted ones

GitOrigin-RevId: ee2c237ec3b67e39df49a0654189926eda4f5abc
2024-07-13 01:26:11 +00:00
Maxim.Kolmakov
cc6b4096a8 [starter] Remove timestamps from the internal logging
They only confuse and doesn't always match the TC timestamps

GitOrigin-RevId: 29242b098093a3ead2054e775a028883f7a6b45b
2024-07-11 20:27:32 +00:00
Maxim.Kolmakov
55a7b42a7e [starter] IJ Perf DBs are Int32 and not Int64
GitOrigin-RevId: 460c3f46f24d9b92963cf0d1ef73f8d436eec2a0
2024-07-11 20:27:32 +00:00
Nikita Kudrin
bf7299d6ca [telemetry metrics] Support Jaeger visualisation since it expects metrics in microseconds
GitOrigin-RevId: 8b1d7cc5a2dc9a3ead43d36552e6ebba9457f5a0
2024-07-11 15:43:17 +00:00
Nikita Kudrin
36d120f059 [metrics] AT-845 Do not sum gauges
GitOrigin-RevId: 08b9e8c7fb0da4bcc06bf998e548e056ec24617f
2024-07-09 16:18:20 +00:00
Daniil Ovchinnikov
7e3390a939 IJPL-150347 treat @NonExtendable classes as effectively final
GitOrigin-RevId: 273fb2a330cb67183be538890ae5c2c53aa9acf8
2024-07-08 23:18:28 +00:00
Nikita Kudrin
a21513c453 [telemetry metrics] Support for the previous versions of IDE that reported metrics in microseconds
GitOrigin-RevId: 9a93ac5426b3f51051a70a20f34bd9f0be2a3565
2024-07-05 18:39:41 +00:00
Nikita Kudrin
0597868dbb [ijent perf tests] AT-877 Draft of IJent JPS perf tests
GitOrigin-RevId: 457491a1c5901b1b0eb0fd0c637e666dc340cca2
2024-07-03 21:54:17 +00:00
Nikita Kudrin
5948a07497 [telemetry metrics] Adjust expected data due to increased precision in imported metrics (was microseconds, now nanosec)
GitOrigin-RevId: 947bdb949aa6c357920a79a19e190674739a02f0
2024-07-01 15:45:21 +00:00
Nikita Kudrin
343baab945 [benchmark tests] Provide a way to disable the default span collector
GitOrigin-RevId: 0d5d5debc9e20ecb783707a45bff4e221a569b73
2024-07-01 15:45:21 +00:00
Nikita Kudrin
bec89927a1 [ijent benchmarks] Use custom span importer in IJent benchmark tests
GitOrigin-RevId: 94d2bbc6d1309dee72f6212e91e99afcf3867d06
2024-07-01 15:45:21 +00:00
Nikita Kudrin
88c9b9c81c [telemetry metrics] Reformatting test data since it's hard to debug in case of tests failure
GitOrigin-RevId: ca394b980b7358da7df086e1f83d215896775791
2024-07-01 15:45:21 +00:00
Nikita Kudrin
945cbccc54 [telemetry metrics] Test data actualization to support nanosecond precision for OpenTelemetry metrics
GitOrigin-RevId: 8da5e9549d1a1881d3e1e3f8b42e3b0237774ee9
2024-07-01 15:45:21 +00:00
Nikita Kudrin
c486cab95d [telemetry metrics] Export OpenTelemetry metrics with nanoseconds precision
GitOrigin-RevId: dd6249a6ea980a2726ca01bd86f30bef113d310e
2024-07-01 15:45:21 +00:00
Maxim.Kolmakov
f017280b92 [starter] Remove CompareSettings since we don't use comparision in tests and instead rely on IJ Perf notifications
GitOrigin-RevId: 5fcde909293efc6f460c8f982ffc04589aa02504
2024-06-27 08:55:35 +00:00
Maxim.Kolmakov
a0a8dc42b3 Remove systemMetrics from performance.metrics.json since they are not supported on IJ Perf and very verbose
GitOrigin-RevId: 44bc54b0f382842af3a1a0b5eb430281c5eddd94
2024-06-25 18:21:36 +00:00
Maxim.Kolmakov
4ec3401b61 Introduce customizable IJPerfMetricsDto
We support double values for some databases so base class should be customizable but at the same time we want to enforce Long for all other DBs

GitOrigin-RevId: 8ee4c538f8bd8ec584758ca05c4b7d6148d1f85f
2024-06-25 18:21:36 +00:00
Daniil Ovchinnikov
db3d8b7c58 rename intellij.platform.reproducibleBuilds.diffTool -> intellij.tools.reproducibleBuilds.diff
This change excludes this module from the platform.

GitOrigin-RevId: 3a2b33461fd4f6c56f35f487196a05120b5a5c10
2024-06-24 15:32:55 +00:00
Nikolay Chashnikov
7360d9e266 [modular loader] diagnostics: provide more information in the exception message if plugin.xml cannot be found
GitOrigin-RevId: c9e5962ee5374fe4494d788ebe20ffa21f2cad8f
2024-06-10 18:19:59 +00:00
Maxim.Kolmakov
71168cb8a9 IJ-CR-135039 Replace usages of PlatformTestUtil.newPerformanceTest with PerformanceTestUtil.newPerformanceTest
GitOrigin-RevId: 4edcfadc23f7305d68b8c08cd6ae634ee4869a2e
2024-06-03 10:14:22 +00:00
Nikolay Chashnikov
f3c79f4f66 [dev launcher] take product-modules.xml and plugin.xml files from sources when determining which modules should be compiled (RDCT-1405)
Before, these resource files were loaded via RuntimeModuleRepository from output directories, so obsolete variants may be loaded or files may not be found at all if modules containing these files aren't compiled yet.

GitOrigin-RevId: 566974b94d3c8886461cb3de5322926e729f9f0e
2024-05-30 02:53:34 +00:00
Nikolay Chashnikov
2192a0d35b [dev launcher] provide a way to locate resource files in module sources in dev launcher (RDCT-1405)
To determine which modules should be compiled in IntellijDevLauncher, we need to load product-modules.xml and plugin.xml files. Currently, they are loaded via RuntimeModuleRepository from output directories, so obsolete variant may be loaded or file may not be found at all if modules containing these files aren't compiled yet. This change introduces the ModuleResourceFileFinder class, which can locate resource files in source directories instead. It doesn't use existing functionality for that to avoid adding additional modules to the system classloader. Also, it parses necessary *.iml files only to speed up the process.

GitOrigin-RevId: d55083ba879a3ae8c7985ba6e5f0211ad3062959
2024-05-30 02:53:28 +00:00
Daniil Ovchinnikov
9a260d7a93 ApiCheckTest: discover API of all dependencies before analyzing the module
This allows re-running the test for a particular module.

GitOrigin-RevId: 5336f2ecfc492c11e3a6c5ca387a8aa0fda369c8
2024-05-29 22:28:53 +00:00
Daniil Ovchinnikov
5331a6fa8f API dump: simplify annotate
GitOrigin-RevId: f2fba40f4f6454a0669bc08e9e6a2e6a6c5e3200
2024-05-29 22:28:53 +00:00
Daniil Ovchinnikov
6226776bd0 IJPL-148997 exclude non-abstract toString() from the API dump
GitOrigin-RevId: 6352bbb374532bca296d08131ae50083f69e46c0
2024-05-29 00:05:31 +00:00
Maxim.Kolmakov
5fd1293b77 [perf unit tests] Remove MetricsPublisher.kt and use IJPerfMetricsPublisher directly
Since we don't need NoOp anymore we can use the single implementation.

GitOrigin-RevId: 609e223951af1926ac49d48fd484387d38e9a94c
2024-05-24 17:11:57 +00:00
Maxim.Kolmakov
afcff6017f [perf unit tests] Allow reporting multiple telemetry meters and spans per test
GitOrigin-RevId: 10ef596809a753fb1ff27759d193382d662608bd
2024-05-24 17:11:57 +00:00
Maxim.Kolmakov
fd0f5944b3 [perf unit tests] Move PerformanceTestInfo to separate module outside of testFramework
Move everything related to metric publishing to intellij.tools.ide.metrics.benchmark module. Since we can't expose metrics to testFramework, create PerformanceTestUtil class with method identical to PlatformTestUtil but returning the instance of PerformanceTestInfoImpl.

GitOrigin-RevId: 2027721b5ff6b2d44fb4b9e71eb1f9aabb6ffc48
2024-05-24 17:11:57 +00:00
Maxim.Kolmakov
e0d9a260f2 [perf unit tests] Move PerformanceTestInfo to separate module outside of testFramework
The class depends heavily on metrics and keeping it inside testFramework requires either duplicating a lot of metrics related code or introducing new dependency and such exposing the new module to SDK.

GitOrigin-RevId: 118b43cae4e2eeb74ade92ffd6073de5f23c007c
2024-05-24 17:11:57 +00:00
Nikita Kudrin
1a962a61c3 [starter tools] Log many objects
GitOrigin-RevId: 040e4db2c9d8d89dd1cadad31aaaaf51a552b060
2024-05-24 16:27:15 +00:00
Elena Shaverdova
162e36c8b8 Refactoring: move FUS collectors checks from CheckFusEventsBaseTest to make them reusable
GitOrigin-RevId: b30f55005e8b1d7047f4b370fb48d3c5ba6fc839
2024-05-19 22:04:55 +00:00
roman.ivanitskii
33028fb234 [starter] Improve error handling in IDERunContext and logging classes
GitOrigin-RevId: eda4fb1a7a094c0597f3fc49816d55b7c270e69d
2024-05-08 19:44:03 +00:00
Roman Shevchenko
32914e56b5 [build scripts] updating Windows launcher generator
- requiring icon property to be set in the Windows customizer
- skipping `*ApplicationInfo.xml` (passing required data via the properties file)
- passing an icon path directly
- making string table optional (the new launcher doesn't write `IDS_*` strings)

GitOrigin-RevId: 4566b339dc35d9f03eb5f2caa572dfb53304c1f3
2024-05-06 19:20:27 +00:00
Daniil Ovchinnikov
1608c4c92e IJPL-148490 exclude empty file-classes from API
GitOrigin-RevId: d0bdb06e75377c439bb5c83863ffcc596db9e55a
2024-04-30 20:39:38 +00:00