JMC flight recording code analysis
Hello,
I am having trouble understanding my flight recording of an ADF application. I have profiled an ADF app built in 11g R2 running on a stand alone server. The JMC recording returns everything it should.
I need to know how to analyze my ADF methods to address problem areas to increase performance. The majority of the code being recorded are java methods and not instances of my ADF app. How can I better understand what's going on so I can tweak the code for better performance results?
Thank you,
I'm working on trying to understand the mission control output a bit better with OP up there. We have watched the youtube series from Oracle called Java Mission Control and Flight Recorder Demo Series, among a couple other videos, blog entries, etc.
We originally tried to use VisualVM but had difficulty getting it running remotely, so we switched to JMC. When we ran VisualVM locally though, we were able to add filters to the output to get rid of certain classes, allowing us to concentrate on the packages that were directly related to our application's code. For example we did not profile these packages:
java.*, javax.*, sun.*, sunw.*, com.sun.*,org.*,groovy.*,groovyjarjarantlr.*,org.*,ice.*, kodo.*,netscape.*,shemacom_bea_xml.*,weblogic.*,commonj.*,oracle.*
I see that there is a filter field in some areas of mission control, but if we put in our package prefix and a wildcard we only get like 1 result.
Is there any output that we could provide that would help illuminate this further? Thanks!
Similar Messages
-
Java Mission Control 5.2 Using Flight Recorder with GlassFish 4
Hello,
I followed the steps in the following link to monitor a GlassFish Application with Flight Recorder .
Enterprise Software Development with Java: Java Mission Control 5.2 is Finally Here! Welcome 7u40!
But I am getting the following Error when double click the "MBean Server":
Could not connect to GlassFish (3376) : Unable to resolve connection URL
Unable to resolve connection URL
can you help me?
Thanks in advance,
Roger Solano.I downloaded Glassfish 4.0 to try this, also following the setup instructions for adding the jvm flags.
I could however connect with the MBean Server.
Could you send us the full error message, and possible also start JMC with
jmc -consoleLog
(add "| more" on Windows)
Are you running JMC 5.2 or 5.3? -
Hello,
I'm configuring solution manager (SOLMAN_SETUP) and in the step activate flight recorder, the customizong documentation says:
Use
On the managed system the flight recorder needs to be enabled by adding a parameter to the J2EE instance profile.
Requirements
The managed system is a J2EE based system or a dual stack with ABAB and Java. Skip this check in all other cases.
Default Settings
Activities
Set the following profile parameter:
jstartup/recorder = java -classpath ../j2ee/cluster/bootstrap/launcher.jar com.sap.engine.offline.OfflineToolStart com.sap.engine.flightrecorder.core.Collector ../j2ee/cluster/bootstrap -node %nodeID% %startTime% -bz $(DIR_GLOBAL) u2013exitcode %exitcode%
On a dual stack system you can use transaction RZ10 to maintain the profile parameter, on a J2EE only system you need to enter the parameter manually to the J2EE instance profile in the file system.
Attention: As this parameter exceeds one line in transaction RZ10, please ensure the line breaks and that no additional characters (like a space) are added to the parameter when you insert the string.
The problem is that the system is not a dual stack, it is only ABAP, and I have installed the Diagnostic agent DAA. So, how can I add the profile parameter? How do I add the parameter in the J2EE instance profile if there isn't a Java instance?Hi,
You can get an overview about flight recorder from the below link:
http://help.sap.com/saphelp_sm32/helpdata/de/56/a945412c98f323e10000000a155106/content.htm
For more details, you might be intersted in reading about E2E Exception Analysis documents or SAP Course E2E100.
Rajeev -
SolMan Diagnotics - Flight Recorder
For the setup of the Root Cause Analysis in SolMan Diagnostics, we need to "enable Flight Recorder" by
adding "jstartup/recorder = ..." to the instance profile of the managed system.
No issue with doing this BUT does anyone have an insight into what the "Flight Recorder" is? And where we can see any of its results in the SMD?
We've searched all over the place and can't find any background info.
TIA ... BartThe Flight Recorder is used in the analysis of system shutdowns.
It contains all the startup framework log files from the instance's work folder as well as the work folder of the message server and enqueue server. It also collects the default traces from all nodes so can be useful in analysis of issues relating to EP, BI or other J2EE web based apps -
Enable Flight Recorder During Wily Install&Config
Dear Experts,
for the installation of the wily e2e tools we follow the "root cause analysis installation and upgrade guide".
In Step 6.3.4 "Enable Flight Recorder" we don't know where to put these lines in.
@ "Config Tool -> Instance -> Parameters" doesn't work...
Its not clear too, if those 4 lines are 1 parameter or not?!
Unfortunately it's not described very well. Can anyone help us?
Thx a lot...
EDIT Was already standing in the instance.properties file...
Edited by: Timm Funke on Feb 7, 2008 3:19 PMI am facing the exact same issue. Can anyone tell me where i should set up the jstarup/recorder parameter?
I will appreciate your help.
Thank you. -
Unable to run code analysis with WDK 9926
Hi,
I am trying to run code analysis with WDK 9926 and seeing below issue? can anybody help me to resolve this ?
Error:
====
C:\sw\dev\T4\windows\Src\kernel\vbd>msbuild.exe cht4vbd.vcxproj /p:Configuration="Windows 8.1 Debug" /P:Platform=x64 /P:RunCodeAnalysisOnce=True
Microsoft (R) Build Engine version 12.0.21005.1
[Microsoft .NET Framework, version 4.0.30319.33440]
Copyright (C) Microsoft Corporation. All rights reserved.
Build started 4/7/2015 12:08:30 AM.
Project "C:\sw\dev\T4\windows\Src\kernel\vbd\cht4vbd.vcxproj" on node 1 (defaul
t targets).
DriverBuildNotifications:
Building 'cht4vbd' with toolset 'WindowsKernelModeDriver10.0' and the 'Deskto
p' target platform.
Using KMDF 1.11.
PrepareForBuild:
Creating directory "x64\Windows8.1Debug\".
Creating directory "C:\sw\dev\T4\windows\Src\kernel\vbd\x64\Windows8.1Debug\c
hk\x64\".
Creating directory "x64\Windows8.1Debug\cht4vbd.tlog\".
InitializeBuildStatus:
Creating "x64\Windows8.1Debug\cht4vbd.tlog\unsuccessfulbuild" because "Always
Create" was specified.
StampInf:
c:\Program Files (x86)\Windows Kits\10\bin\x86\stampinf.exe -d "*" -a "amd64"
-k "1.11" -f x64\Windows8.1Debug\chvbdx64.inf
Copying "C:\sw\dev\T4\windows\Src\kernel\vbd\chvbdx64.inf" to "x64\Windows8.1
Debug\chvbdx64.inf" for stamping
Using version information from c:\Program Files (x86)\Windows Kits\10\Include
\shared\\ntverp.h
Could not open version header file c:\Program Files (x86)\Windows Kits\10\Inc
lude\shared\\bldnump.h. (0x00000002)
Could not determine version information. Please specify using -v option.
Updates common INF file directives
USAGE:
stampinf -f filename [-s section] [-d <xx/yy/zzzz> | *]
-a architecture -n [-c catalogfile]
[-v <w.x.y.z> | *]
[-k nnnnn] [-u nnnnn]
[-i path]
-f specifies the INF file to process
-s specifies the INF section to place the DriverVer= directive. By
default this directive is placed in the [Version] section.
-d specifies the date written in the DriverVer= directive. Note that
a '*' given for a date value means for stampinf to write the
current date. If the date is not specified, the date is taken
from the STAMPINF_DATE environment variable.
-v specifies the version written in the DriverVer= directive. Note
that a '*' given for a version value means for stampinf to write
the current time (h.m.s.ms). This is useful during development
in order to get increasing version numbers. If the version is not
specified, its value is taken from the STAMPINF_VERSION
environment variable.
-a specifies the architecture string to replace the $ARCH$ keyword.
The $ARCH$ keyword is used to tailor a TargetOSVersion decoration
in a [Manufacturer] section, as well as its respective section
name, to a specific platform. If no value is specified, stampinf
takes its value from the _BuildArch environment variable.
-c specifies the value to be written in the CatalogFile= directive
in the [Version] section. By default, this directive is not
written.
-k specifies the version of KMDF that this driver depends on. This
is used to tailor the KmdfLibraryVersion & KMDF co-installer name
in the INF. This will replace the $KMDFVERSION$ and
$KMDFCOINSTALLERVERSION$ keywords in the INF. The string is of
the format:
<major_version>.<minor_version>
As an example, supplying 1.5 as the version string will result in
values of 1.5 and 01005 for the two keywords (respectively).
-u specifies the version of UMDF that this driver depends on. This
is used to tailor the UmdfLibraryVersion & UMDF co-installer name
in the INF. This will replace the $UMDFVERSION$ and
$UMDFCOINSTALLERVERSION$ keywords in the INF. The string is of
the format:
<major_version>.<minor_version>.<service_version>
(where service_version is generally zero)
As an example, supplying 1.5.0 as the version string will result
in values of 1.5.0 and 01005 for the two keywords (respectively).
-i specifies the location of ntverp.h file.
path represent the fully qualified
location of the directory containing ntverp.h.
-n noisy mode shows verbose stampinf output
-x removes the coinstaller tag from the file and replaces the line w
ith a ";"
NOTES:
The environment variable PRIVATE_DRIVER_PACKAGE can be set to
enable stampinf's 'developer mode' behavior. When this is
set, the date and version used for DriverVer is set to the
current date and time, regardless of the command line
settings. Also, 'CatalogFile=delta.cat' is written to the
version section, unless a catalog was already specified
with '-c'.
c:\Program Files (x86)\Windows Kits\10\build\WindowsDriver.common.targets(355,5
): error MSB6006: "stampinf.exe" exited with code 1. [C:\sw\dev\T4\windows\Src\
kernel\vbd\cht4vbd.vcxproj]
Done Building Project "C:\sw\dev\T4\windows\Src\kernel\vbd\cht4vbd.vcxproj" (de
fault targets) -- FAILED.
Build FAILED.
"C:\sw\dev\T4\windows\Src\kernel\vbd\cht4vbd.vcxproj" (default target) (1) ->
(StampInf target) ->
c:\Program Files (x86)\Windows Kits\10\build\WindowsDriver.common.targets(355
,5): error MSB6006: "stampinf.exe" exited with code 1. [C:\sw\dev\T4\windows\Sr
c\kernel\vbd\cht4vbd.vcxproj]
0 Warning(s)
1 Error(s)
Time Elapsed 00:00:04.07
Thanks, KrishnaHi,
I am trying to run code analysis with WDK 9926 and seeing below issue? can anybody help me to resolve this ?
Error:
====
C:\sw\dev\T4\windows\Src\kernel\vbd>msbuild.exe cht4vbd.vcxproj /p:Configuration="Windows 8.1 Debug" /P:Platform=x64 /P:RunCodeAnalysisOnce=True
Microsoft (R) Build Engine version 12.0.21005.1
[Microsoft .NET Framework, version 4.0.30319.33440]
Copyright (C) Microsoft Corporation. All rights reserved.
Build started 4/7/2015 12:08:30 AM.
Project "C:\sw\dev\T4\windows\Src\kernel\vbd\cht4vbd.vcxproj" on node 1 (defaul
t targets).
DriverBuildNotifications:
Building 'cht4vbd' with toolset 'WindowsKernelModeDriver10.0' and the 'Deskto
p' target platform.
Using KMDF 1.11.
PrepareForBuild:
Creating directory "x64\Windows8.1Debug\".
Creating directory "C:\sw\dev\T4\windows\Src\kernel\vbd\x64\Windows8.1Debug\c
hk\x64\".
Creating directory "x64\Windows8.1Debug\cht4vbd.tlog\".
InitializeBuildStatus:
Creating "x64\Windows8.1Debug\cht4vbd.tlog\unsuccessfulbuild" because "Always
Create" was specified.
StampInf:
c:\Program Files (x86)\Windows Kits\10\bin\x86\stampinf.exe -d "*" -a "amd64"
-k "1.11" -f x64\Windows8.1Debug\chvbdx64.inf
Copying "C:\sw\dev\T4\windows\Src\kernel\vbd\chvbdx64.inf" to "x64\Windows8.1
Debug\chvbdx64.inf" for stamping
Using version information from c:\Program Files (x86)\Windows Kits\10\Include
\shared\\ntverp.h
Could not open version header file c:\Program Files (x86)\Windows Kits\10\Inc
lude\shared\\bldnump.h. (0x00000002)
Could not determine version information. Please specify using -v option.
Updates common INF file directives
USAGE:
stampinf -f filename [-s section] [-d <xx/yy/zzzz> | *]
-a architecture -n [-c catalogfile]
[-v <w.x.y.z> | *]
[-k nnnnn] [-u nnnnn]
[-i path]
-f specifies the INF file to process
-s specifies the INF section to place the DriverVer= directive. By
default this directive is placed in the [Version] section.
-d specifies the date written in the DriverVer= directive. Note that
a '*' given for a date value means for stampinf to write the
current date. If the date is not specified, the date is taken
from the STAMPINF_DATE environment variable.
-v specifies the version written in the DriverVer= directive. Note
that a '*' given for a version value means for stampinf to write
the current time (h.m.s.ms). This is useful during development
in order to get increasing version numbers. If the version is not
specified, its value is taken from the STAMPINF_VERSION
environment variable.
-a specifies the architecture string to replace the $ARCH$ keyword.
The $ARCH$ keyword is used to tailor a TargetOSVersion decoration
in a [Manufacturer] section, as well as its respective section
name, to a specific platform. If no value is specified, stampinf
takes its value from the _BuildArch environment variable.
-c specifies the value to be written in the CatalogFile= directive
in the [Version] section. By default, this directive is not
written.
-k specifies the version of KMDF that this driver depends on. This
is used to tailor the KmdfLibraryVersion & KMDF co-installer name
in the INF. This will replace the $KMDFVERSION$ and
$KMDFCOINSTALLERVERSION$ keywords in the INF. The string is of
the format:
<major_version>.<minor_version>
As an example, supplying 1.5 as the version string will result in
values of 1.5 and 01005 for the two keywords (respectively).
-u specifies the version of UMDF that this driver depends on. This
is used to tailor the UmdfLibraryVersion & UMDF co-installer name
in the INF. This will replace the $UMDFVERSION$ and
$UMDFCOINSTALLERVERSION$ keywords in the INF. The string is of
the format:
<major_version>.<minor_version>.<service_version>
(where service_version is generally zero)
As an example, supplying 1.5.0 as the version string will result
in values of 1.5.0 and 01005 for the two keywords (respectively).
-i specifies the location of ntverp.h file.
path represent the fully qualified
location of the directory containing ntverp.h.
-n noisy mode shows verbose stampinf output
-x removes the coinstaller tag from the file and replaces the line w
ith a ";"
NOTES:
The environment variable PRIVATE_DRIVER_PACKAGE can be set to
enable stampinf's 'developer mode' behavior. When this is
set, the date and version used for DriverVer is set to the
current date and time, regardless of the command line
settings. Also, 'CatalogFile=delta.cat' is written to the
version section, unless a catalog was already specified
with '-c'.
c:\Program Files (x86)\Windows Kits\10\build\WindowsDriver.common.targets(355,5
): error MSB6006: "stampinf.exe" exited with code 1. [C:\sw\dev\T4\windows\Src\
kernel\vbd\cht4vbd.vcxproj]
Done Building Project "C:\sw\dev\T4\windows\Src\kernel\vbd\cht4vbd.vcxproj" (de
fault targets) -- FAILED.
Build FAILED.
"C:\sw\dev\T4\windows\Src\kernel\vbd\cht4vbd.vcxproj" (default target) (1) ->
(StampInf target) ->
c:\Program Files (x86)\Windows Kits\10\build\WindowsDriver.common.targets(355
,5): error MSB6006: "stampinf.exe" exited with code 1. [C:\sw\dev\T4\windows\Sr
c\kernel\vbd\cht4vbd.vcxproj]
0 Warning(s)
1 Error(s)
Time Elapsed 00:00:04.07
Thanks, Krishna -
Is there any plug-ins for static code analysis in Jdeveloper
Hi,
Is there any PMD, check style and static code analysis plug-ins available for JDeveloper? Those are available for Eclipse. How to achieve that in the JDeveloper?
Regards,
Raghu.This should help-
PMD plugin for JDeveloper 11.1.2.0
http://develishdevelopment.wordpress.com/2012/03/12/have-released-pmd-jdeveloper-extension-4-3/
Always mention you Jdev version. Here I just assumed yours :P -
Source code analysis tools for ActionScript 2?
I have been tasked with performing source code analysis on a very large (>1000 files) AS2 codebase.
Not surprisingly, Googling is not yielding useful results. Before declaring defeat, I felt it important to query this forum.
Any guidance would be appreciated.We'd like to evaluate the hundreds of files using a static analysis tool, just as one would use lint for a C codebase.
Thanks,
M -
Java static code analysis tool on Windows
What Java static source code analysis tool are there on Microsoft Windows, and which would you recommend?
I Know Coverity and
Klocwork
Edited by: Jennifer.helen on May 8, 2009 6:03 AMI submit PMD and Findbugs.
-
Source Code Analysis tool for BPEL (and BPMN) 11g
Hi,
We are checking for the availablility of 'source code analysis' tools (analogy like findbug, checkstyle) for BPEL / BPMN Orchestrations.
Any information/pointers to it is really valuable and appreciated.
Thanks,
Pavan.Hi AnujaMoharir,
Welcome to MSDN.
I am afraid that as Renee Culver said, these forums donot support VB6, you could refer to this thread:
Where to post your VB 6 questions
You could consider posting this issue in these forums below:
These forums do not support Visual Basic 6, however there are many third-party support sites that do. If you have a VB6-related question please visit these popular forums:
VB Forums
VB City
Thanks for your understanding.
Best Regards,
Youjun Tang
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
TFS Build - Code Analysis is not happening.
Dear support,<o:p style="font-family:'Times New Roman';font-size:medium;line-height:normal;"></o:p>
<o:p style="font-family:'Times New Roman';font-size:medium;line-height:normal;"> </o:p>
I have the following issue with TFS build system.
<o:p style="font-family:'Times New Roman';font-size:medium;line-height:normal;"> </o:p>
Although I have configured the projects in my solutions to run the static code analysis during build, and I have created a build definition to build these solutions, I’m unable
to get the corresponding static code analysis report in the build summary. This is also the case if I set Perform Code Analysis to Always in the build definition. Is this a bug or am I missing something?
Regards
HemHi Hem,
Thanks for your reply.
You’re using TFS 2013 Update 4?
Do you mean that you have installed the VS 2013 Premium on your build agent machine, and if you manually build your solution using this VS 2013 Premium on build agent machine, the code analysis result show correctly in build result?
Please follow the steps in document to check your solution and build definition settings:
https://msdn.microsoft.com/en-us/library/bb668977.aspx?f=255&MSPPError=-2147217396.
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
Flight Recorder does not provide Method Profiling Samples on CentOS 5
Flight recorder from jdk 1.8.0_05 does not collect information about methods then running under CentOS 5.
But jdk1.7.0_55 provides "Method Profiling Samples" events on the same machine.
Steps to reproduce:
1. Download test class - https://gist.github.com/evsinev/0b136693ef7549ddc9b5
2. compile it
3. Run it:
NOW=$(date +"%H-%M-%S")
export JAVA_OPTS="$JAVA_OPTS -XX:+UnlockCommercialFeatures -XX:+FlightRecorder"
export JAVA_OPTS="$JAVA_OPTS -XX:StartFlightRecording=duration=120s,filename=data/profile-startup-${NOW}.jfr,name=Startup,settings=profile"
export JAVA_OPTS="$JAVA_OPTS -XX:FlightRecorderOptions=samplethreads=true,stackdepth=64"
/opt/jdk1.8.0_05/bin/java $JAVA_OPTS -cp . Test
Running with jdk 1.8.0_05 does not provide "Method Profiling Samples"
Running with jdk 1.7.0_55 provides "Method Profiling Samples"
Environment:
CentOS release 5.9 (Final)
uname:Linux 2.6.18-348.1.1.el5 #1 SMP Tue Jan 22 16:19:19 EST 2013 x86_64
libc:glibc 2.5 NPTL 2.5I've spoken to the developers of the JVM/JDK parts of JFR, and I'm afraid they say this is a known issue
(https://bugs.openjdk.java.net/browse/JDK-8036090, https://bugs.openjdk.java.net/browse/JDK-8037340)
that happens on Linux only.
It will be fixed in 7u60 and 8u20 which will be released later this year. -
Help please .. Automatic code analysis tool
Hi,
I have written some action script for my project and i am
required to do a static code analysis on it.
I do not know any source code analyzers that support
actionscript particularly like fortify and ounce labs which
support Java script but not action script.Please suggest me
an tool that can do analysis for me.
Regards
Mallik.Hi Ross,
Thank you very much for your reply, i think i should rephrase
my question to make it even clear.
I am looking for a tool to detect Buffer overflows, memory
leaks, security vulnerabilities, string vulnerabilities, Race
conditions. I am sorry i think by mentioning security i gave the
impression of protection my application from external intrusion.
But this is what i meant. For example, My project also includes C#
usage and i have options like fortifysoftware, ouncelabs
,parasoft's .TEST, FxCop (microsoft) to help me do static analysis
on my C# code. I need some tool like these for action
scripts.Please let me know if you need more explanation.
Regards
Mallik -
Blocked thread with no events does not show up in Flight Recording
When there is no event in a thread and the thread is blocked during the entire duration of a flight recording, the thread does not show up in the flight recording. How to check the state of such a thread from the flight recording?
Hi,
I am not sure I understand the question correctly, but events (like Java Blocked) are only saved to file when the thread is not longer blocked. So if you have an event that goes on during the whole recording it won't show up. It's a known limitation of flight recorder.
If you are really desperate to find out the state of the thread you could look at the Method Profiling events that samples the thread.
1) In the Event Types remove all the events that are checked.
2) Check the Method Profiling Sample.
3) Go to Events-> Threads. Select the thread you are interested in
4) Right click and select Operative Set -> Set Selection
5) Go to Events -> Log and check Show only Operative Set
6) Click on an event in the log and look at Event Attributes below. There is a field called Thread State which will tell you the state thread.
That's the best that you could do.
Erik -
Does anybody know if exist tools for static code analysis of
actionscript?
I mean tool like checkstyle, pmd of findbug for java.
Thanks.Hi Bill,
There was a presentation at NI Week on "NI LabVIEW Development Style Guidelines", and at the end of the presentation, a demo was given of the VI Analyzer, an unreleased style and performance analysis toolkit for LabVIEW by National Instruments. The presenter indicated that it was in Alpha at the time of the presentation (mid-August).
-D
Darren Nattinger, CLA
LabVIEW Artisan and Nugget Penman
Maybe you are looking for
-
Window.print() not working for swf file in webpage?
I have used the javascript window.print() function to print a webpage. But when i click a button to invoke this function the swf file stops then the screenshot is taken and then it resumes playing,, thus resulting in a blank page to be printed... Wha
-
Hi All, I need to entre around 1000 New entries in the Price list categories (T Code OVSI) . Every time I have new entry, it asks for Transport request. can I have BDC fot this? I need to upload around 1000 new price list categories on production ser
-
Built in Constraint Validation before DML
I have generated Business Components from DB Tables and FK's. When I run the AM in testmode, I expected the Entity Constraints to be checked either upon item validation time or at DML time. But the framework tries to commit invalid data (e.g. child r
-
Hi All, I am working on an SD requirement in which I get Perchage Order from third party through IDoc (Basic Type ORDERS05). After receiving this IDoc I have to create a Sales Order (that I am doing using FM IDOC_INPUT_ORDERS). Here as soon as Sales
-
So I rename my files on import into LR. After I edit the session I sometimes have gaping holes in the sequence. And undoubtedly the client will ask "hey were are image numbers blah, blah, blah?" So I would rename on export right? Now I have a linear