Sample Questions Flashcards
True or false: you should expect a Java servlet container to support EJBs.
False. EJBs are supported by J2EE-compliant application servers, but typically not by servlet containers.
True or False: BT response times only measure the response time for a single thread, not an entire asynchronous BT
true (use E2E latency for the entire async BT)
Why are some lines between Tiers solid and some dashed on the app flow map?
the dashed lines indicate asynchronous behavior, whereas the solid ones indicate synchronous behavior.
Do you support Spray with Scala?
Yes, but Spray is not supported as a first-class Web framework by AppD, meaning that BT detection will not be automatic, E2E detection will have to be configured, and there is a good chance some custom correlation might be needed. IOW, this is a complicated environment.
The customer informs you that their application is using some fancy classloader logic, and they want to detect BTs from classes in one specific class loader, even though the same class name is used in other class loaders. Is this possible?
Not without further information
Show how to configure a rule from an inner class that is an interface
Must know it’s doable!
Class name syntax
Proper selection of “implements an interface
You have discovered that the customer’s environment uses an OSGi container. What is your next step?
https://docs.appdynamics.com/display/PRO42/OSGi+Infrastructure+Configuration
As of October, 2016, what must you do to configure the Java agent to work with modules?
Modules have not appeared in any JDK shipping as of 2016, so there is nothing to do – you won’t see them until at least Java 9.
rue or False: Java supports more than one type of classloading scheme
True
In AppD 4.2 what are the two NoSQL databases we support?
Cassandra and MongoDB
How many of these databases are relational databases?
PostgreSQL OrientDB Cassandra MongoDB Oracle
PostgreSQL and Oracle
What does AppD Support OOTB?
Oracle
DB2
Sybase
PostgreSQL (aka “Postgres”)
How do I get the bind variables to show in queries?
capture-raw-sql node property
I’m using a just-released JDBC driver for MySQL. Will you work with my driver?
yes, but we’d likely have to set one or all of these properties in app-agent-config.xml:
jdbc-statements
jdbc-connections
jdbc-prepared-statements
jdbc-callable-statements
How can you find the call chain of a method that does not appear in snapshots?
set the node property debug-interceptors on the class and method
show the syntax for simultaneously setting debug-interceptors on com.foobar.MyClass, method get() and also on the constructor of com.foobar.MyOtherClass
com.foobar.MyClass/get,com.foobar.MyOtherClass/
What tool is available and when should decompiling be used?
Tool: GUI-based tool is called JD-GUI
When: done with consent of the customer. Try to avoid.
What is “Spring” ?
Spring may be used to mean an alternative to EJBs (Spring Beans) or any combination of the Spring projects.
Can application use both Spring Beans and EJBs?
Yes (but it is unlikely you’d actually see an application like that)
Show me an example of Spring support *in a demo
The easiest way to do this is to show Spring Bean transaction detection
Customer asks if AppDynamics support the Spring framework.
Yes! However, no credit will be given unless you get this question clarified. Which specific Spring projects?
From the options, what supports ESB like semantics but isn’t an ESB?
Apache Camel Apache ServiceMix Fuse ESB Mule ESB Netty Apache NiFi
Netty
Apache NiFi
Will AppDynamics work with Mule ESB OOTB?
Typically the answer is no, not OOTB. ESBs almost always require some advanced configuration. Exact versions of the ESB and any sub-packages is always needed.
In a BT log how can you distinguish find-entry-points output from regular BT logging output?
“Discovery stack” vs. “Logging request stack”.
Show how to set node properties
Tiers & Nodes → (specific node) → Configure.
which Java releases use PermGen vs. Metaspace?
PermGen is Java 7 and Metaspace is Java 8. WHY? Because it directly affects the metrics that can be set for threshold alerts, which can be a forewarning of an upcoming JVM crash.