Dynatrace | Integration between NeoLoad and Dynatrace OneAgent
kandi X-RAY | Dynatrace Summary
kandi X-RAY | Dynatrace Summary
These Advanced Actions allows you to integrate NeoLoad with Dynatrace in order to correlate data from one tool to another.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Get a list of time series metrics
- Report custom metrics
- Connects to the raw socket .
- Sends a metric to the event API
- Gets application entities .
- Trust all certificates .
- Initialize metrics .
- Updates the last value .
- Add parameters to the URL
- Creates and returns the data exchange api client .
Dynatrace Key Features
Dynatrace Examples and Code Snippets
Community Discussions
Trending Discussions on Dynatrace
QUESTION
I have 2 Spring boot webflux based applications running on EC2. One on port 8082 and other on 8083. I manage the release on EC2 via bamboo. For a couple of weeks now, I have been seeing the 8083 app shutting down by itself, a graceful shutdown. I do not see any process crashes from monitoring tools like dynatrace. I don’t see any out of Memory errors as well. Both the apps are started by bamboo via nohup java command. Only point that I observe is when the 8083 app goes down there is spike in the network traffic shown by dynatrace. App on 8082 runs without any issues so far. Could you pls suggest on specific pointer on this.
...ANSWER
Answered 2021-Apr-28 at 05:18I identified the root cause. There seemed to be a conflict between the release scripts of applications running on 8082 and 8083. Releasing one was affecting the other. Since it was a Linux server and the release script was killing the process ids as part of the release this was happening.
QUESTION
We are building an electron app using React & NodeJS. I was wondering what are the preferred app monitoring tools out there that provide good support for monitoring these sort of apps (Web running on desktop) and adhere to the desktop app rules.
For the web, we have many tools like Keymetrics, dynatrace, etc but I guess they are all very web-specific (one server, etc). I am looking for something that fulfills the desktop use case where the app will be running on millions of computers and it gives me insights into how the app is performing on the majority of systems. Specifically, I am looking for things like:
1 - Distributed IPC tracing 2 - P9x metrics 3 - Env info => Os, network 4 - Filesystem metrics etc.
I looked into Sentry & NewRelic, but I want to gather your feedback from potential experiences of these tools.
Any suggestion or leads are welcome
...ANSWER
Answered 2020-Dec-21 at 15:48Since you mentioned that you already use Dynatrace I would suggest to have a closer look at Dynatrace Openkit. It's maybe not exactly what you are searching for. But I used it successfully to monitor a Java-based rich client application and there seems to be also a JS-version of it available here. The focus of the library is more on user experience but you can easily track things like OS, screen width, product version, user ID and location (autom. detected from IP address). With actions you can track any kind of operation and add optional key value pairs.
I'm not sure what you exactly mean with distributed IPC tracing. With the libray you can at least track outgoing web requests. You can also add a header to web requests so that they can be correlated with transactions of a remote backend that is already monitored with Dynatrace.
The library does neither provide any network / disk montoring by default nor metrics. For the first you could add properties or events to an action. For the later you could maybe use the metrics API. I used properties on actions to track additional data like the size of a loaded document but I haven't used the metrics API yet. To my understanding the metrics should be chartable (incl. percentiles) like any other metric in Dynatrace.
QUESTION
ANSWER
Answered 2020-Nov-30 at 23:07You need to use echo -n
when you're printing the beginning of each line, so it doesn't break the line before all the services.
Then echo a newline after all the services.
QUESTION
According to this article How Garbage Collection Works there are four kinds of Gc roots:
- Local variables are kept alive by the stack of a thread. This is not a real object virtual reference and thus is not visible. For all intents and purposes, local variables are GC roots.
- Active Java threads are always considered live objects and are therefore GC roots. This is especially important for thread local
variables.- Static variables are referenced by their classes. This fact makes them de facto GC roots. Classes themselves can be garbage-collected, which would remove all referenced static variables. This is of special importance when we use application servers, OSGi containers or class loaders in general. We will discuss the related problems in the Problem Patterns section.
- JNI References are Java objects that the native code has created as part of a JNI call. Objects thus created are treated specially because the JVM does not know if it is being referenced by the native code or not. Such objects represent a very special form of GC root, which we will examine in more detail in the Problem Patterns section below.
In JVM specification local variables in the frames of stack have no type and it's just somehow an array of bytes and it's the responsibility of compiler to generate type specific instruction for those local variables for instance iload, fload, aload, etc. So clearly GC can not find references to object by only looking at local variable section of the stack frames.
My questions are :
How GC finds those roots at all?
How GC can find local variables in the stack that are references to object and are not other type of variables (for instance variables that have been stored by iconst)?
Then How Gc finds fields of those objects to create an accessible tree?
Does it use instruction that are defined by JVM itself to find those objects?
And lastly what is the meaning of this sentence in the article?
...This is not a real object virtual reference and thus is not visible
ANSWER
Answered 2020-Nov-18 at 12:53
- How GC finds those roots at all?
A JVM provides an internal (C / C++) API for finding the roots. The JVM knows where the Java stack frames are, were the static frames for Java each class are, where the live JNI object handles are, and so on. (It knows because it was involved in creating them, and keeps track of them.)
- How GC can find local variables in the stack that are references to object and are not other type of variables.
The JVM keeps information for each method that says which cells in each stack frame are reference variables. The GC can figure out which method each stack frame corresponds to ... just like fillInStackTrace
can.
(for instance constant)
That's not actually relevant. Constants (i.e. final
fields) don't get special treatment.
- Then how GC finds fields of those objects to create an accessible tree?
The JVM keeps information for each class to say which of the static and instance fields are reference variables. There is an field in each object's header that refers to the class.
The whole process is called "marking", and it is described in the page you were looking at.
- Does it use instruction that are defined by jvm itself to find those objects?
I'm not sure what you are asking. But "probably yes". The GC is a component of the JVM, so everything is does is "defined by the JVM".
- And lastly what is the meaning of this sentence in the article?
This is not a real object virtual reference and thus is not visible
It might be saying that the thread's stack is not a Java object ... which is true. But I think you would need to ask the authors of that Ebook; see the bottom of https://www.dynatrace.com/resources/ebooks/javabook/ for their names.
You added this:
In JVM specification local variables in the frames of stack have no type and it's just somehow an array of bytes and it's the responsibility of compiler to generate type specific instruction for those local variables for instance iload, fload, aload, etc. So clearly GC can not find references to object by only looking at local variable section of the stack frames.
Actually, that is not true. As @Holder reminded me, the verifier infers the types of the cells in the stackframe by simulating the effects of the bytecodes that initialize them. In addition, each method in a classfile has a StackMapTable
attribute containing information that is used to assist (and speed up) the verifier's type determination.
Later on, the GC can obtain the inferred type information from the JVM.
(In theory the GC could also make use of the StackMapTable
information to determine when local variables go out of scope ... within a method. But apparently it doesn't in HotSpot JVMs; see Does the StackMapTable affect the garbage collection behavior?)
The description of garbage collection in that Ebook is (deliberately) brief and high level. But that is true of most descriptions that you will find. The deep details are complicated.
If your really want (and need) to understand how GC's work, my advice is:
- To find out how the current Java implementations work read the OpenJDK source code.
- Track down and read the Sun and Oracle research papers on Java GCs.
- Get hold of a copy of a good textbook on Garbage Collection.
QUESTION
I am new to dynatrace. We have a multi-tenant cloud application. I am working on a POC to check if dynatrace can be used to create a matrics which will give information about infrastructure usage details by each customer. These information i will store it either in a table or a file. For example for Customer1 an entry will be there in a file/db table like , RDBMS:200MB, FILES_STORAGE:1GB, JMS:100 etc.
The above information are usage done for a day
Now using dynatrace I want to create a dashboard, the above information should be shown in a timeseries.
Could some one please help me what are features I have to use and learn to achive this? Thanks in advance.
...ANSWER
Answered 2020-Sep-04 at 05:43You can periodically send the metrics to Dynatrace as "custom metric", see the documentation.
Note: You cannot send historical values this way, you will send the "current" value periodically to continuously fill the timeseries.
Naturally you can send this much more often than daily, up to seconds-resolution if necessary and then you will get the chart in full resolution.
Then you can use custom charting to chart the metric and "pin" it onto a Dashboard.
QUESTION
I have a tiny java console application which I would like to optimize in terms of memory usage. It is being run with Xmx set to only 64MB. The overall memory usage of the process according to different monitoring tools (htop, ps, pmap, Dynatrace) shows values above 250MB. I run it mostly on Ubuntu 18 (tested on other OS-es as well).
I've used -XX:NativeMemoryTracking java param and Native Memory Tracking with jcmd to find out why so much more memory is used outside of the heap.
The values displayed by NMT when summarized were more or less the same as the ones shown by htop as Resident Memory.
NMT:
...ANSWER
Answered 2020-Jun-30 at 02:42- first, A typical memory representation of C program consists of following sections. (https://www.geeksforgeeks.org/memory-layout-of-c-program/)
QUESTION
We currently have a REST API application that is deployed in an Azure VM via IIS. We used Dynatrace to monitor its performance, however there's a particular request that I'm finding hard to understand.
Based from the image above the web request took 14.9 seconds, however the request to the REST API only took 1.37 seconds. There was a self time of 13.5 seconds from IIS. What does this mean?
...ANSWER
Answered 2020-Jun-07 at 16:20There are two possible reasons for the self time of 13.5 seconds:
- The body of the request or response headers were quite big and the transfer of the data took most of the time. Switch to "Summary" and check the body and header size.
- Majority of the time was spend in IIS modules (e.g. authentication, compression) before/after the request was handled. Switch to Response Time Analysis, there you should see the time spend in IIS modules at the bottom of the screen.
QUESTION
I'm using OrionSDK and I have a python query that keeps returning this error: mismatched input 'Orion' expecting 'FROM' . Here is the query. Not sure what can be causing this. Thanks in Advance!
...ANSWER
Answered 2020-Jun-05 at 18:41You need some extra spaces in your query string.
For instance, these two lines:
QUESTION
'm trying to support propagating the W3C trace context traceId and spanId properties from http calls -> publisher -> consumer -> http call within MassTransit (just so they show up in the logs/seq for now, but we're using Dynatrace), but am I couldn't find anything out-of-the-box here: https://masstransit-project.com/advanced/monitoring/diagnostic-source.html
If there is nothing available I'll probably try to create something myself based on these articles:
I could find this one as an example for OpenTracing: https://github.com/yesmarket/MassTransit.OpenTracing
And this as a reference for NServiceBus: https://jimmybogard.com/building-end-to-end-diagnostics-and-tracing-a-primer-trace-context/
Unless anyone can suggest something that already exists?
...ANSWER
Answered 2020-May-18 at 10:28Dynatracing claims to integrate seamlessly with OpenTracing https://www.dynatrace.com/integrations/opentracing/ and if you use the library you mentioned and if you have your HTTP part instrumented with OpenTracing, it will work out of the box.
The only potential drawback that in the service that hosts gets an HTTP call and within the context of handling it sends or publishes a message via MassTransit, everything must be instrumented with OpenTracing, because it will start the child span using the OpenTracing API.
We do this with Datadog, so we use the Datadog OpenTracing integration library and trace the WebApi and HttpClient using OpenTracing Contrib libraries. So, the automatic instrumentation didn't work for us. But it's not hard to use those libs to instrument your app instead of using the automatic instrumentation.
The usual flow is like:
- Outside -> WebApi: start a span
- WebApi -> MassTransit: start a child span, inject the context to headers
- MassTransit -> consumer: extract the context, start a child span and so on
Both bits with injection and extraction are handled in the MassTransit.OpenTracing
library, so, there's nothing extra to do.
With a library that your provider has to support OpenTracing it's usually like this:
- Configure the tracer of the provider
- Set the OpenTracing global tracer to the wrapper, using the integration library from your provider
- When you create a span with OpenTracing, it will create a vendor-specific span and wrap it in OpenTracing span
QUESTION
Context: I have just learn a trick to get (download) data from FireStore Dashboard. Obviouslly, it is much easier just open Google Dashboard on Browser and see with my eyes to own Google Dasboard. Nevertheless, for personal reasons, in my company the operators can't look at a third Dashboard. They only can see internal Dashboards. I am trying some workaround where I can get/download the same data used for fill in Dashboard and imported it to our internal solution based on Dynatrace/ELK.
For learning purposes, in order to download Google Dashboard data I followed:
1 - Get a ACCESS_TOKEN using gcloud
...ANSWER
Answered 2020-May-07 at 16:06So, the auth token is generated from your gcloud init
authorization, which is end-user credentials. That's why you're getting that warning. Because you've used your manually signed in credentials to generate the token.
The preferred way to auth is to use a service account (documentation here: https://cloud.google.com/iam/docs/service-accounts) for authentication. That documentation will also walk you through creating a service account. If you're using it to talk to Firestore, your service account will need appropriate Firestore role permissions. Not to confuse you, but the roles in IAM are for datastore
although they apply for Firestore.
This page: https://cloud.google.com/firestore/docs/security/iam lists out which roles/permissions your service account will need in order to do various things with Firestore.
Now, all that being said, the key-file it's talking about is the service account key that you can download when you create the service account. Easiest is to do it via the console in your GCP project, as when you're creating the service account, there's a handy button to create the key, and it downloads it to your local machine.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install Dynatrace
Read the NeoLoad documentation to see How to install a custom Advanced Action.
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page