diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png new file mode 100644 index 0000000..3590fb8 Binary files /dev/null and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png index 3590fb8..89b59e6 100644 Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png index 89b59e6..89958db 100644 Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1).png index 89958db..d786c1c 100644 Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png index d786c1c..2cd95b5 100644 Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png index 2cd95b5..a197784 100644 Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1).png index a197784..7a819e7 100644 Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1).png index 7a819e7..1466b20 100644 Binary files a/.gitbook/assets/image (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1).png index 1466b20..b105b7f 100644 Binary files a/.gitbook/assets/image (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1).png differ diff --git a/.gitbook/assets/image (1) (1).png b/.gitbook/assets/image (1) (1).png index b105b7f..349c624 100644 Binary files a/.gitbook/assets/image (1) (1).png and b/.gitbook/assets/image (1) (1).png differ diff --git a/.gitbook/assets/image (1).png b/.gitbook/assets/image (1).png index 349c624..7b91d18 100644 Binary files a/.gitbook/assets/image (1).png and b/.gitbook/assets/image (1).png differ diff --git a/.gitbook/assets/image (2) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (2) (1) (1) (1) (1) (1).png new file mode 100644 index 0000000..68628de Binary files /dev/null and b/.gitbook/assets/image (2) (1) (1) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (2) (1) (1) (1) (1).png b/.gitbook/assets/image (2) (1) (1) (1) (1).png index 68628de..52411fd 100644 Binary files a/.gitbook/assets/image (2) (1) (1) (1) (1).png and b/.gitbook/assets/image (2) (1) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (2) (1) (1) (1).png b/.gitbook/assets/image (2) (1) (1) (1).png index 52411fd..f2ea8df 100644 Binary files a/.gitbook/assets/image (2) (1) (1) (1).png and b/.gitbook/assets/image (2) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (2) (1) (1).png b/.gitbook/assets/image (2) (1) (1).png index f2ea8df..832e335 100644 Binary files a/.gitbook/assets/image (2) (1) (1).png and b/.gitbook/assets/image (2) (1) (1).png differ diff --git a/.gitbook/assets/image (2) (1).png b/.gitbook/assets/image (2) (1).png index 832e335..1466b20 100644 Binary files a/.gitbook/assets/image (2) (1).png and b/.gitbook/assets/image (2) (1).png differ diff --git a/.gitbook/assets/image (2).png b/.gitbook/assets/image (2).png index 1466b20..8901fb5 100644 Binary files a/.gitbook/assets/image (2).png and b/.gitbook/assets/image (2).png differ diff --git a/.gitbook/assets/image (3) (1) (1) (1) (1).png b/.gitbook/assets/image (3) (1) (1) (1) (1).png new file mode 100644 index 0000000..e79a922 Binary files /dev/null and b/.gitbook/assets/image (3) (1) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (3) (1) (1) (1).png b/.gitbook/assets/image (3) (1) (1) (1).png index e79a922..6231830 100644 Binary files a/.gitbook/assets/image (3) (1) (1) (1).png and b/.gitbook/assets/image (3) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (3) (1) (1).png b/.gitbook/assets/image (3) (1) (1).png index 6231830..874eb2e 100644 Binary files a/.gitbook/assets/image (3) (1) (1).png and b/.gitbook/assets/image (3) (1) (1).png differ diff --git a/.gitbook/assets/image (3) (1).png b/.gitbook/assets/image (3) (1).png index 874eb2e..1466b20 100644 Binary files a/.gitbook/assets/image (3) (1).png and b/.gitbook/assets/image (3) (1).png differ diff --git a/.gitbook/assets/image (3).png b/.gitbook/assets/image (3).png index 1466b20..0cbcfcb 100644 Binary files a/.gitbook/assets/image (3).png and b/.gitbook/assets/image (3).png differ diff --git a/.gitbook/assets/image (4) (1) (1) (1).png b/.gitbook/assets/image (4) (1) (1) (1).png new file mode 100644 index 0000000..533c81b Binary files /dev/null and b/.gitbook/assets/image (4) (1) (1) (1).png differ diff --git a/.gitbook/assets/image (4) (1) (1).png b/.gitbook/assets/image (4) (1) (1).png index 533c81b..abad046 100644 Binary files a/.gitbook/assets/image (4) (1) (1).png and b/.gitbook/assets/image (4) (1) (1).png differ diff --git a/.gitbook/assets/image (4) (1).png b/.gitbook/assets/image (4) (1).png index abad046..004ca10 100644 Binary files a/.gitbook/assets/image (4) (1).png and b/.gitbook/assets/image (4) (1).png differ diff --git a/.gitbook/assets/image (4).png b/.gitbook/assets/image (4).png index 004ca10..6ce2953 100644 Binary files a/.gitbook/assets/image (4).png and b/.gitbook/assets/image (4).png differ diff --git a/.gitbook/assets/image (5) (1) (1).png b/.gitbook/assets/image (5) (1) (1).png new file mode 100644 index 0000000..3e7fa31 Binary files /dev/null and b/.gitbook/assets/image (5) (1) (1).png differ diff --git a/.gitbook/assets/image (5) (1).png b/.gitbook/assets/image (5) (1).png index 3e7fa31..8d1a7f7 100644 Binary files a/.gitbook/assets/image (5) (1).png and b/.gitbook/assets/image (5) (1).png differ diff --git a/.gitbook/assets/image (5).png b/.gitbook/assets/image (5).png index 8d1a7f7..949fc74 100644 Binary files a/.gitbook/assets/image (5).png and b/.gitbook/assets/image (5).png differ diff --git a/.gitbook/assets/image.png b/.gitbook/assets/image.png index 949fc74..cab7a93 100644 Binary files a/.gitbook/assets/image.png and b/.gitbook/assets/image.png differ diff --git a/README (1).md b/README (1).md index 80aaffc..d2faadb 100644 --- a/README (1).md +++ b/README (1).md @@ -16,7 +16,7 @@ description: >- The Digma Plugin is available on the IntelliJ Marketplace. -
+
You can install the plugin from your IDE or open the plugin [page](https://plugins.jetbrains.com/plugin/19470-digma-continuous-feedback) in your browser. @@ -26,7 +26,7 @@ Digma runs locally on your machine. To process all of the captured traces, analy After the plugin installs you'll get to choose the preferred way to install the Digma Engine. Several options are available: -
+
@@ -34,7 +34,7 @@ After the plugin installs you'll get to choose the preferred way to install the This is the default option. After installation, the plugin will try to start the Digme Engine containers on your local Docker environment and will offer clear controls to allow you to `Stop` `Start` or `Remove` it. The benefit of using this approach is that Digma will be able to also update the Engine automatically when a new release becomes available. -![](<.gitbook/assets/image (4) (1) (1).png>) +![](<.gitbook/assets/image (4) (1) (1) (1).png>)
@@ -112,13 +112,13 @@ If you need to change the default collector port (:5050), the change also requi Finally, update the new ports in the plugin settings page which you can access via the IntellIJ settings page. -
+
### How do I know Digma is Running? If you've run Digma via any of the first two options, you can check that the Analytics Engine containers are up and running. In the IDE you should see both the Observability side panel and the Insights side panel showing up with no errors and waiting to receive data. -
+
diff --git a/SUMMARY.md b/SUMMARY.md index 5da63dc..ac0f362 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -20,8 +20,8 @@ ## Use Cases (WIP) -* [Design and write code more efficiently by understanding the system flows](use-cases-wip/design-and-write-code-more-efficiently-by-understanding-the-system-flows.md) -* [Get early feedback about code changes](use-cases-wip/get-early-feedback-about-code-changes.md) +* [Design and write code more efficiently by understanding the system flows](use-cases-wip/understand-the-application-flows-better-for-faster-development.md) +* [Get early feedback on bottlenecks and code issues](use-cases-wip/get-early-feedback-on-bottlenecks-and-code-issues.md) * [Prioritize Technical Debt](use-cases-wip/prioritize-technical-debt.md) ## Digma Core Concepts diff --git a/digma-core-concepts/assets.md b/digma-core-concepts/assets.md index 320b56e..18365ed 100644 --- a/digma-core-concepts/assets.md +++ b/digma-core-concepts/assets.md @@ -8,7 +8,7 @@ description: >- Asset categories include HTTP Endpoints, code locations, consumers, database queries, and more. In most cases, an asset correlates to a [Span](https://opentelemetry.io/docs/concepts/signals/traces/#spans) that has been categorized and processed in a specific way. -
+
Another reason for categorizing spans into assets is to be able to better compare them. There is no sense in comparing an endpoint to a database query, for example. In each category, it is possible to sort the assets based on duration, performance impact, errors, and other criteria. diff --git a/installation/central-on-prem-install.md b/installation/central-on-prem-install.md index ad2fce8..7b105ab 100644 --- a/installation/central-on-prem-install.md +++ b/installation/central-on-prem-install.md @@ -70,7 +70,7 @@ To check everything is working properly we can check the pod status and make sur For example, this is the expected output: -
+
**Step 4: Get the IP/DNS value for the Digma deployment** diff --git a/instrumentation/automatic-instrumentation-in-the-ide/quarkus-micronaut.md b/instrumentation/automatic-instrumentation-in-the-ide/quarkus-micronaut.md index 55e3ae5..c83ad9a 100644 --- a/instrumentation/automatic-instrumentation-in-the-ide/quarkus-micronaut.md +++ b/instrumentation/automatic-instrumentation-in-the-ide/quarkus-micronaut.md @@ -6,7 +6,7 @@ If you're using Quarkus then the recommended way to enable tracing is not via th Once you've loaded a project that contains Quarkus modules, the Digma plugin will automatically pick up on that, and within a few seconds present you with an option to configure the dependencies for you. -
+
Clicking the link will add the needed dependencies to your `pom.xml` or `build.gradle` files. diff --git a/instrumentation/automatic-instrumentation-in-the-ide/spring-spring-boot-dropwizard-and-default.md b/instrumentation/automatic-instrumentation-in-the-ide/spring-spring-boot-dropwizard-and-default.md index e04fca8..8422ab1 100644 --- a/instrumentation/automatic-instrumentation-in-the-ide/spring-spring-boot-dropwizard-and-default.md +++ b/instrumentation/automatic-instrumentation-in-the-ide/spring-spring-boot-dropwizard-and-default.md @@ -11,14 +11,14 @@ description: >-
-
+
-
+
-
+
diff --git a/instrumentation/spring-spring-boot-dropwizard-and-default/covering-more-of-your-code-with-observability.md b/instrumentation/spring-spring-boot-dropwizard-and-default/covering-more-of-your-code-with-observability.md index a734cf4..060a56f 100644 --- a/instrumentation/spring-spring-boot-dropwizard-and-default/covering-more-of-your-code-with-observability.md +++ b/instrumentation/spring-spring-boot-dropwizard-and-default/covering-more-of-your-code-with-observability.md @@ -6,7 +6,7 @@ Beyond the automatic instrumentation of server and client libraries, you may wis Digma makes it easy to add additional observability coverage to any location. Placing the cursor inside any method you can click on the Observability icon in the Insights side panel to quickly add an annotation that will include its data in the traces. -
+
Note: If you're using the Micrometer Tracing observability strategy in Digma, clicking on `Add Observability` will add an @Observe annotation. Otherwise, the @WithSpan annotation will be used. @@ -29,4 +29,4 @@ Digma is unrolling a new feature to allow developers to automatically instrument To enable `Extended Observability` open the Digma plugin settings page and type in the name of your application package under the `Extended Observability (beta)` property. -
+
diff --git a/instrumentation/spring-spring-boot-dropwizard-and-default/instrumenting-your-code-in-ci-staging-or-the-terminal.md b/instrumentation/spring-spring-boot-dropwizard-and-default/instrumenting-your-code-in-ci-staging-or-the-terminal.md index 563f3bc..dd417c3 100644 --- a/instrumentation/spring-spring-boot-dropwizard-and-default/instrumenting-your-code-in-ci-staging-or-the-terminal.md +++ b/instrumentation/spring-spring-boot-dropwizard-and-default/instrumenting-your-code-in-ci-staging-or-the-terminal.md @@ -42,7 +42,7 @@ This information will be used when identifying issues. For example, here is the -
+
diff --git a/use-cases-wip/get-early-feedback-about-code-changes.md b/use-cases-wip/get-early-feedback-about-code-changes.md deleted file mode 100644 index d38d11b..0000000 --- a/use-cases-wip/get-early-feedback-about-code-changes.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -description: >- - One thing that Digma tries to do is make observability proactive. This means - that if there are any issues you shouldn't encounter them when it's already - late in the dev/release process ---- - -# Get early feedback about code changes - -### Learn of code-related issues, from multiple environments - -As the code gets executed, either in your local environment, in CI staging, or in production - Digma learns about how it performs, scales, and identifies any process issues or anti-patterns that should be dealt with. - - - diff --git a/use-cases-wip/get-early-feedback-on-bottlenecks-and-code-issues.md b/use-cases-wip/get-early-feedback-on-bottlenecks-and-code-issues.md new file mode 100644 index 0000000..8561342 --- /dev/null +++ b/use-cases-wip/get-early-feedback-on-bottlenecks-and-code-issues.md @@ -0,0 +1,26 @@ +--- +description: >- + One thing that Digma tries to do is make observability proactive. This means + that if there are any issues you shouldn't encounter them when it's already + late in the dev/release process +--- + +# Get early feedback on bottlenecks and code issues + +### Learn of code-related issues, from multiple environments + +As the code gets executed, either in your local environment, in CI staging, or in production - Digma learns about how it performs, scales, and identifies any process issues or anti-patterns that should be dealt with. + +As you work on your code, any newly detected issues will appear in the issues side panel as `unread`. + +
+ +Additionally, the code itself will be highlighted to signify whether any critical issues are present: + +
+ +### Recheck issues after fixing the source problems + +Once an issue Digma detected is fixed, you can use the `recheck` option on the issue card. Digma will start re-examining the problem based on new data to determine whether the issue is indeed fixed. This is not mandatory for detecting whether an issue is fixed but can expedite the detection process. + +
diff --git a/use-cases-wip/prioritize-technical-debt.md b/use-cases-wip/prioritize-technical-debt.md index 5ca046d..f69016a 100644 --- a/use-cases-wip/prioritize-technical-debt.md +++ b/use-cases-wip/prioritize-technical-debt.md @@ -1,2 +1,24 @@ # Prioritize Technical Debt +Beyond simply identifying issues. Digma also analyzes their effect on the application to determine their criticality. + +### Issue criticality + +Each issue is assessed for criticality based on its overall effect on the application. In local environments, this is merely measured by the severity of the issue and the scope of different application flows affected by it. In shared environments such as CI, staging, or production, however, actual usage is also measured to determine the true impact of the issue. + +
+ +The criticality of each issue is reflected by the color coding of the issue icon. Hovering over the icon will also reveal the criticality score. When reviewing the overall issue list, you can choose to sort by latest or by the most critical issues to help prioritize the backlog and avoid micro-optimizations: + +
+ +### Asset performance impact + +Digma assesses each asset (query, code location, endpoint etc.) to determine its performance impact on the application. This helps identify the best candidates for optimization that would carry the most 'punch for the bucks' if their performance is improved. Assessment of performance impact is available only in shared environments such as CI/staging or production and relies on measuring actual usage. + +For example, a slow query that is rarely used or has a marginal effect on the overall request would be ranked lower than a slow query that is heavily used and critically affects multiple flows. + + + + + diff --git a/use-cases-wip/design-and-write-code-more-efficiently-by-understanding-the-system-flows.md b/use-cases-wip/understand-the-application-flows-better-for-faster-development.md similarity index 95% rename from use-cases-wip/design-and-write-code-more-efficiently-by-understanding-the-system-flows.md rename to use-cases-wip/understand-the-application-flows-better-for-faster-development.md index 6a3e3d2..5cc9736 100644 --- a/use-cases-wip/design-and-write-code-more-efficiently-by-understanding-the-system-flows.md +++ b/use-cases-wip/understand-the-application-flows-better-for-faster-development.md @@ -4,7 +4,7 @@ description: >- out changes faster and without issues. --- -# Understand the application flows better for faster development +# Design and write code more efficiently by understanding the system flows ### See runtime usages