jtl file is not getting parsed in jenkins for jmeter - jenkins
I am trying to run the jmeter test from Jenkins. I've already installed performance plugin and restarted the jenkins. I don't want to use any maven/ant.
Execute shell command
cd /Users/Shared/Jenkins/Home/jobs/meineTui-QA-Test-Jmeter/workspace
java -jar /Users/Shared/Jenkins/apache-jmeter/bin/ApacheJMeter.jar -n -t Login_Logout.jmx -l result.jtl
In the post build actions of jenkin-> publish performance test result report -> jmeter -> report files -> **/*.jtl
While I am running from jenkin the console says
Performance: Failed to parse /Users/Shared/Jenkins/Home/jobs/meineTui-QA-Test-Jmeter/builds/2013-10-03_17-14-53/performance-reports/JMeter/result.jtl: Content is not allowed in prolog.
So I am not able view the result/report in the performance Report section. Any suggestion how to fix.
==================================console output=============
+ cd /Users/Shared/Jenkins/Home/jobs/meineTui-QA-Test-Jmeter/workspace
+ java -jar /Users/Shared/Jenkins/apache-jmeter/bin/ApacheJMeter.jar -n -t Login_Logout.jmx -l result.jtl
Creating summariser <summary>
Created the tree successfully using Login_Logout.jmx
Starting the test # Thu Oct 03 17:14:55 BST 2013 (1380816895721)
Waiting for possible shutdown message on port 4445
summary + 2 in 4.1s = 0.5/s Avg: 2013 Min: 766 Max: 3260 Err: 0 (0.00%) Active: 1 Started: 1 Finished: 0
summary + 10 in 4s = 2.5/s Avg: 392 Min: 286 Max: 573 Err: 0 (0.00%) Active: 0 Started: 1 Finished: 1
summary = 12 in 8s = 1.5/s Avg: 662 Min: 286 Max: 3260 Err: 0 (0.00%)
Tidying up ... # Thu Oct 03 17:15:04 BST 2013 (1380816904307)
... end of run
Performance: Percentage of errors greater or equal than 0% sets the build as unstable
Performance: Percentage of errors greater or equal than 0% sets the build as failure
Performance: Recording JMeter reports '**/*.jtl'
Performance: Parsing JMeter report file result.jtl
Performance: Failed to parse /Users/Shared/Jenkins/Home/jobs/meineTui-QA-Test-Jmeter/builds /2013-10-03_17-14-53/performance-reports/JMeter/result.jtl: Content is not allowed in prolog.
Finished: SUCCESS
result.jtl
1380816896268,766,Login,200,OK,Group1 1-1,text,true,230,766
1380816897071,3260,Reservations,200,OK,Group1 1-1,text,true,3295,3260
1380816900339,335,ReservationID,200,OK,Group1 1-1,text,true,8683,335
1380816900681,353,Weather,200,OK,Group1 1-1,text,true,2022,353
1380816901039,563,Summary,200,OK,Group1 1-1,text,true,6528,563
1380816901607,573,Home,200,OK,Group1 1-1,text,true,11955,573
1380816902187,329,HolidayCountdown,200,OK,Group1 1-1,text,true,344,329
1380816902520,375,Contacts,200,OK,Group1 1-1,text,true,2835,375
1380816902899,286,Excursions,200,OK,Group1 1-1,text,true,237,286
1380816903189,361,TravelAgent,200,OK,Group1 1-1,text,true,570,361
1380816903554,319,Profile,200,OK,Group1 1-1,text,true,395,319
make the following changes in the jmeter.properties file:
remove the comment from the following line and change csv by xml
#jmeter.save.saveservice.output_format=csv
like this:
jmeter.save.saveservice.output_format=xml
remove the (#) comment from the following lines:
jmeter.save.saveservice.data_type=true
jmeter.save.saveservice.label=true
jmeter.save.saveservice.response_code=true
jmeter.save.saveservice.successful=true
jmeter.save.saveservice.thread_name=true
And change the extension of the file to be generate jtl to xml.
With latest versions of Jenkins Performance plugin (e.g. v1.14) you can parse both CSV and XML formats.
Depending on the format of your result files, you need to select the appropriate report type in the "Publish performance tests result report" section:
chose "JMeter" report type if your result files are XML
chose "JMeterCSV" report type if your result files are CSV.
Related
Jenkins BUILD_LOG evaluates to [...truncated ]
I am trying to set the Build name/Build description based on the outcome of a shell script. For example, I am executing the following lines in shell: echo `date` if [ $test == true ]then echo "BuildSuccess" else echo "NoBuild" fi I am then running the build step "Changes build description". In this, I have added the macro: ${BUILD_LOG,maxLines=1} After running the job I get the output as: [SSH] executing... Thu May 20 00:47:42 PDT 2021 BuildSuccess [SSH] completed [SSH] exit-status: 0 New run description is '[...truncated 478 B...] ' Evaluated macro: '#37' New run name is '#37' Finished: SUCCESS Can anyone help me understand why the macro is getting evaluated to [...truncated 478 B...]? Is there a way I can capture the text "BuildSuccess" from the log? I am in effect trying to capture the last line of the build log. Please note that this is a freestyle project and not a pipeline.
I solved a similar issue by: BUILD_LOG_REGEX email-ext plugin Here is a tutorial http://siddesh-bg.blogspot.com/2012/04/using-buildlogregex-in-jenkins-email.html . By BUILD_LOG_REGEX the above mentioned plugin is able to query and extract parts of the build log.
unable to find build script at c:\JmeterTest\build.xml
I am simply trying to run a jmeter test and get email from jenkins. Everytime my job fails and error message is unable to find build.xml.Below is the log I went through all online help, specified ANT etc but nothing worked. [JmeterTest] $ cmd /c call C:\Windows\TEMP\jenkins1399437408540848331.bat C:\JmeterTest>cd c:\Jmeter\bin c:\Jmeter\bin>C:\jmeter\bin\jmeter.bat -Jjmeter.save.saveservice.output_format=csv -n -t C:\JmeterTest\JmeterTest.jmx -l C:\Results\JmeterTest.jtl -e -o C:\Results Creating summariser Created the tree successfully using C:\JmeterTest\JmeterTest.jmx Starting the test # Mon Aug 12 14:31:50 EDT 2019 (1565634710309) Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445 summary + 2259 in 00:00:09 = 250.9/s Avg: 4 Min: 1 Max: 2040 Err: 2257 (99.91%) Active: 2 Started: 3 Finished: 1 summary + 23846 in 00:00:30 = 794.9/s Avg: 2 Min: 0 Max: 115 Err: 23846 (100.00%) Active: 2 Started: 3 Finished: 1 summary = 26105 in 00:00:39 = 669.3/s Avg: 2 Min: 0 Max: 2040 Err: 26103 (99.99%) summary + 9897 in 00:00:15 = 658.6/s Avg: 2 Min: 0 Max: 31 Err: 9897 (100.00%) Active: 0 Started: 3 Finished: 3 summary = 36002 in 00:00:54 = 666.3/s Avg: 2 Min: 0 Max: 2040 Err: 36000 (99.99%) Tidying up ... # Mon Aug 12 14:32:45 EDT 2019 (1565634765028) ... end of run ERROR: Unable to find build script at C:\JmeterTest\build.xml Email was triggered for: Failure - Any Sending email for trigger: Failure - Any An attempt to send an e-mail to empty list of recipients, ignored. Finished: FAILURE
You need to choose one of the options: Running JMeter test in command-line non-GUI mode (which works fine according to your Jenkins console output) Running JMeter test via Apache Ant You seem to have both build steps so my expectation is that you just need to remove the "Ant" one or to properly configure it if you want to proceed with Ant. An example build.xml file can be found: Under "extras" folder of your JMeter installation Under "extras" folder of JMeter Sources
drake visualizer not displaying anything
OS: Ubuntu 16.04, NVIDIA Driver I followed the drake installation procedure as described in drake website.(I have also installed nvidia driver)After installation, as per the instructions when I run: $ xhost +local:root; nvidia-docker run -i --rm -e DISPLAY -e QT_X11_NO_MITSHM=1 -v /tmp/.X11-unix:/tmp/.X11-unix --privileged -t drake; xhost -local:root I am getting the following error:(simulation is not being displayed, but the build is successful) non-network local connections being added to access control list + [[ 0 -eq 0 ]] + bazel build //tools:drake_visualizer //examples/acrobot:run_passive Starting local Bazel server and connecting to it... INFO: Analysed 2 targets (95 packages loaded, 18023 targets configured). INFO: Found 2 targets... INFO: Elapsed time: 89.206s, Critical Path: 1.58s INFO: 0 processes. INFO: Build completed successfully, 1 total action + sleep 2 + ./bazel-bin/tools/drake_visualizer + bazel run //examples/acrobot:run_passive INFO: Analysed target //examples/acrobot:run_passive (0 packages loaded, 0 targets configured). INFO: Found 1 target... Target //examples/acrobot:run_passive up-to-date: bazel-bin/examples/acrobot/run_passive INFO: Elapsed time: 1.031s, Critical Path: 0.01s INFO: 0 processes. INFO: Build completed successfully, 1 total action INFO: Build completed successfully, 1 total action process 297: D-Bus library appears to be incorrectly set up; failed to read machine uuid: UUID file '/etc/machine-id' should contain a hex string of length 32, not length 0, with no other text See the manual page for dbus-uuidgen to correct this issue. libGL error: No matching fbConfigs or visuals found libGL error: failed to load driver: swrast Could not initialize OpenGL for RasterGLSurface, reverting to RasterSurface. Could not initialize OpenGL for RasterGLSurface, reverting to RasterSurface. Could not initialize OpenGL for RasterGLSurface, reverting to RasterSurface. Could not initialize GLX ./setup/ubuntu/docker/entrypoint.sh: line 15: 297 Aborted (core dumped) ./bazel-bin/tools/drake_visualizer non-network local connections being removed from access control list
We are in the process of updating the instructions to use nvidia-docker 2.0. Please check the drake repo again later this week for an update. In meantime, you may wish to try the open-source driver instructions on the same page.
YOCTO - First build for BBB
I am trying to use for the first time the Yocto tool for my BeagleBoneBlack. First I run this bash file to install Yocto: #!/bin/bash WKDIR=/work mkdir -p $WKDIR/beaglebone-black/yocto/sources mkdir -p $WKDIR/beaglebone-black/yocto/builds cd $WKDIR/beaglebone-black/yocto/sources git clone -b morty git://git.yoctoproject.org/poky.git poky-morty cd $WKDIR/beaglebone-black/yocto/ source sources/poky-morty/oe-init-build-env builds/build-bbb-morty Then I edited the file local.conf at "build-bbb-morty/conf" diretory: MACHINE ?= "beaglebone" and added DL_DIR ?= "${TOPDIR}/../dl" IMAGE_INSTALL_append = " kernel-modules kernel-devicetree" Then I run bitbake:> bitbake core-image-minimal After about 8 hours in my Core i7 five generation I got this result at my terminal output and I have no idea what I need to do to fix it: bitbake core-image-minimal Parsing recipes: 100% |########################################################################################################| Time: 0:02:55 Parsing of 864 .bb files complete (0 cached, 864 parsed). 1318 targets, 67 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies Build Configuration: BB_VERSION = "1.32.0" BUILD_SYS = "x86_64-linux" NATIVELSBSTRING = "Ubuntu-16.04" TARGET_SYS = "arm-poky-linux-gnueabi" MACHINE = "beaglebone" DISTRO = "poky" DISTRO_VERSION = "2.2.1" TUNE_FEATURES = "arm armv7a vfp neon callconvention-hard cortexa8" TARGET_FPU = "hard" meta meta-poky meta-yocto-bsp = "morty:a3fa5ce87619e81d7acfa43340dd18d8f2b2d7dc" NOTE: Fetching uninative binary shim from http ://downloads.yoctoproject.org/releases/uninative/1.4/x86_64-nativesdk-libc.tar.bz2;sha256sum=101ff8f2580c193488db9e76f9646fb6ed38b65fb76f403acb0e2178ce7127ca --2017-01-18 15:51:09-- http ://downloads.yoctoproject.org/releases/uninative/1.4/x86_64-nativesdk-libc.tar.bz2 Resolving downloads.yoctoproject.org (downloads.yoctoproject.org)... 198.145.20.127 Connecting to downloads.yoctoproject.org (downloads.yoctoproject.org)|198.145.20.127|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 2473216 (2.4M) [application/octet-stream] Saving to: ‘/work/beaglebone-black/yocto/builds/build-bbb-morty/../dl/uninative/101ff8f2580c193488db9e76f9646fb6ed38b65fb76f403acb0e2178ce7127ca/x86_64-nativesdk-libc.tar.bz2’ 2017-01-18 15:51:18 (297 KB/s) - ‘/work/beaglebone-black/yocto/builds/build-bbb-morty/../dl/uninative/101ff8f2580c193488db9e76f9646fb6ed38b65fb76f403acb0e2178ce7127ca/x86_64-nativesdk-libc.tar.bz2’ saved [2473216/2473216] Initialising tasks: 100% |#####################################################################################################| Time: 0:00:14 NOTE: Executing SetScene Tasks NOTE: Executing RunQueue Tasks WARNING: attr-native-2.4.47-r0 do_fetch: Failed to fetch URL http ://download.savannah.gnu.org/releases/attr/attr-2.4.47.src.tar.gz, attempting MIRRORS if available WARNING: libpng-native-1.6.24-r0 do_fetch: Failed to fetch URL http ://distfiles.gentoo.org/distfiles/libpng-1.6.24.tar.xz, attempting MIRRORS if available ERROR: core-image-minimal-1.0-r0 do_image_wic: Function failed: do_image_wic (log file is located at /work/beaglebone-black/yocto/builds/build-bbb-morty/tmp/work/beaglebone-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_image_wic.23788) ERROR: Logfile of failure stored in: /work/beaglebone-black/yocto/builds/build-bbb-morty/tmp/work/beaglebone-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_image_wic.23788 Log data follows: | DEBUG: Executing python function set_image_size | DEBUG: Python function set_image_size finished | DEBUG: Executing shell function do_image_wic | Checking basic build environment... | Done. | | Build artifacts not found, exiting.<br/> | (Please check that the build artifacts for the machine | selected in local.conf actually exist and that they | are the correct artifacts for the image (.wks file)) | | The artifact that couldn't be found was kernel-dir: | /work/beaglebone-black/yocto/builds/build-bbb-morty/tmp/deploy/images/beaglebone | WARNING: exit code 1 from a shell command. | ERROR: Function failed: do_image_wic (log file is located at /work/beaglebone-black/yocto/builds/build-bbb-morty/tmp/work/beaglebone-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_image_wic.23788) ERROR: Task (/work/beaglebone-black/yocto/sources/poky-morty/meta/recipes-core/images/core-image-minimal.bb:do_image_wic) failed with exit code '1' NOTE: Tasks Summary: Attempted 1771 tasks of which 6 didn't need to be rerun and 1 failed. Summary: 1 task failed: /work/beaglebone-black/yocto/sources/poky-morty/meta/recipes-core/images/core-image-minimal.bb:do_image_wic Summary: There were 2 WARNING messages shown. Summary: There was 1 ERROR message shown, returning a non-zero exit code.
While not sure this could be the reason of the problem, the prefered method to add packages to the image, in the local.conf context is using the CORE_IMAGE_EXTRA_INSTALL variable. Therefore change: IMAGE_INSTALL_append = " kernel-modules kernel-devicetree" to CORE_IMAGE_EXTRA_INSTALL += "kernel-modules kernel-devicetree"
I think there is no problem with your work method. It seems to be a build environment problem, but the error log seems to confirm. your log location at "/work/beaglebone-black/yocto/builds/build-bbb-morty/tmp/work/beaglebone-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_image_wic.23788"
Your error log indicates the the URL for fetching binaries failed. You can try using tunnel through proxy. Or you can run the bitbake again because it can also fail sometimes due to network conditions.
php popen(exim) from a webpage
Problem: Apache accessing programs in /usr/bin Platform: Win/7 Pro Sp1 Apache 2.4 Php 5.6 Cygwin emulator gives Linux/Unix emu and has Exim 4.84-1 program: sendit.php hndl popen( exim ... ) fwrite(hndle, email_headers); fwrite(hndle, email_body); fflush(hndle); fclose(hndle); (a)launch from user account php sendit.php -> exim/exim_main.log updated reports 368 bytes sent to exim -> email arrives demonstrates sendit.php works & Exim config and permissions are correct (b)launch from apache account uid(apache) gid(srvc) php sendit.php -> exim/exim_main.log updated reports 368 bytes sent to exim -> email arrives demonstrates sendit.php runs from any account (c)launch from within a web page Apache is run from its own uid/gid as in (b) page.phtml sendit.php -> NO update to exim log -> no mail recv'd reports same NNN bytes send to exim NO I/O errors I fwriting_stream 368 bytes ... * wrote body fragment 368 * wrote total 368 I Wrote Body:(368) of 368 I Wrote EOT(5) of 5 I FLUSHING pipe I closing pipe I is closed pipe I returning 3 adding -d+deliver+host_lookup+lookup+rewrite options to the popen(), yields nice trace - - EXCEPT when run withing Apache - - nothing shows up Apache cfg has ExecCGI in the directory and other php / perl programs run there. Issue is Exim is not within the Apache environment (/usr/bin/exim) So, created link /usr/bin/exim -> docroot/exim and reference this instance popen(docroot/exim ...) Still fails to deliver via pipe -> exim Any ideas??? btw: have used popen in webpages several places with success and yes, I verifed the popen return $PIPE = popen( ... ...);if ($PIPE === false) die("*FE*);
STATUS: SOLVED 2015-05-30 Issue is Windows + Cygwin pathing PHP tolerates Cygwin as $PATH is available. Running within Apache LoadModule php5_module "c:/php/php5.6/php5apache2_4.dll" does not Must use an absolute WINDOWS path like c:/cygwin/bin/exim-4.84-1.exe within the server. php cmdPath_Tests.php uses file_exists($path) exec to find that path usable within Apache Jeff#JeffPC7% case 0 0 trying: $ ls -l /usr/bin/exim lrwxrwxrwx 1 Administrator None 24 Apr 6 09:19 /usr/bin/exim -> /usr/bin/exim-4.84-1.exe Jeff#JeffPC7% $ ls -l /usr/bin/exim /cygwin/bin/exim{,-4.84-1}.exe c:/cygwin/bin/exim-4.84-1.exe case 1 1 ls: cannot access /cygwin/bin/exim.exe: No such file or directory ls: cannot access /cygwin/bin/exim-4.84-1.exe: No such file or directory lrwxrwxrwx 1 Administrator None 24 Apr 6 09:19 /usr/bin/exim -> /usr/bin/exim-4.84-1.exe case 3 1 trying: -rwxr-xr-x 3 Jeff None 1192467 Jan 25 19:16 c:/cygwin/bin/exim-4.84-1.exe /usr/bin/exim 0 0 /usr/bin/exim /usr/bin/exim-4.84-1.exe 0 1 /usr/bin/exim-4.84-1.exe which: no exim-4.84-1.exe in (/cygwin/bin) 1 1 File Exists cmd 1 1 trying: /cygwin/bin/exim-4.84-1.exe results: /usr/bin/exim-4.84-1.exe 2 1 trying: /usr/bin/exim-4.84-1.exe I found: 3 1 trying: c:/cygwin/bin/exim-4.84-1.exe cmd results: 2015-05-30 11:58:24 NP6FDA-000530-QD Completed ie: email sent