summaryrefslogtreecommitdiffstats
path: root/documentation
diff options
context:
space:
mode:
authorScott Rifenbark <scott.m.rifenbark@intel.com>2013-07-22 20:39:54 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-08-13 13:18:42 +0100
commitb44a9ab990defa6a30d363f80a9e5ad4de594896 (patch)
tree7a0165ba0129e77453c2976fec641c7ec95b6144 /documentation
parent69879741d03ce0a997d042ff3c6c51bbb2d48c5e (diff)
downloadpoky-b44a9ab990defa6a30d363f80a9e5ad4de594896.tar.gz
dev-manual: First draft of webhob section
Fixes [YOCTO #4730] First draft of the section documenting the webhob service. (From yocto-docs rev: 4d995519cd4e481445a5399f936fce682d330dfe) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation')
-rw-r--r--documentation/dev-manual/dev-manual-common-tasks.xml169
1 files changed, 169 insertions, 0 deletions
diff --git a/documentation/dev-manual/dev-manual-common-tasks.xml b/documentation/dev-manual/dev-manual-common-tasks.xml
index f4df9062f0..f060cc86ee 100644
--- a/documentation/dev-manual/dev-manual-common-tasks.xml
+++ b/documentation/dev-manual/dev-manual-common-tasks.xml
@@ -4319,6 +4319,175 @@
4319 </section> 4319 </section>
4320 </section> 4320 </section>
4321 4321
4322 <section id="examining-builds-using-webhob">
4323 <title>Examining Builds using Webhob</title>
4324
4325 <para>
4326 WebHob is a Web-based interface to the OpenEmbedded build system,
4327 which uses BitBake.
4328 WebHob offers features to record and analyze BitBake runs applied
4329 to a specific target.
4330 Using Webhob, you can do the following:
4331 <itemizedlist>
4332 <listitem><para>Understand why a task fails or was
4333 reused from the shared state cache when you thought it
4334 should have been rebuilt from scratch.</para></listitem>
4335 <listitem><para>See what is built (recipes and
4336 packages) and what packages were installed into the final
4337 image.</para></listitem>
4338 <listitem><para>See performance-related information such
4339 as size, build time, CPU usage, disk input, and disk
4340 output.</para></listitem>
4341 </itemizedlist>
4342 </para>
4343
4344 <note>
4345 <para>This release of the WebHob service provides you with information
4346 about a BitBake run.
4347 The tool does not allow you to configure and launch a build.
4348 Future development includes plans to integrate the data examination
4349 features of WebHob with the configuration and build launching
4350 capabilities of
4351 <ulink url='&YOCTO_HOME_URL;/tools-resources/projects/hob'>Hob</ulink>.
4352 </para>
4353 <para>For more information on using Hob to build an image,
4354 see the
4355 "<link linkend='image-development-using-hob'>Image Development Using Hob</link>"
4356 section.</para>
4357 </note>
4358
4359 <section id='starting-webhob'>
4360 <title>Starting WebHob</title>
4361
4362 <para>
4363 Getting set up to use WebHob and start it is simple.
4364 First, be sure you have met the following requirements:
4365 <itemizedlist>
4366 <listitem><para>You have set up your
4367 <link linkend='source-directory'>Source Directory</link>.
4368 See the
4369 <link linkend='local-yp-release'>Yocto Project Release</link>
4370 item for information on how to set up the Source
4371 Directory.</para></listitem>
4372 <listitem><para>Be sure your build machine has
4373 <ulink url='http://en.wikipedia.org/wiki/Django_%28web_framework%29'>Django</ulink>
4374 version 1.4 or greater installed.</para></listitem>
4375 </itemizedlist>
4376 </para>
4377
4378 <para>
4379 Once you have met the requirements, follow these steps to
4380 start WebHob running in the background of your shell:
4381 <orderedlist>
4382 <listitem><para>Set up your build environment by sourcing
4383 the <filename>oe-init-build-env</filename> script.
4384 </para></listitem>
4385 <listitem><para>Edit your <filename>local.conf</filename>
4386 configuration file as needed.</para></listitem>
4387 <listitem><para>Start the WebHob service using this
4388 command from within your build directory:
4389 <literallayout class='monospaced'>
4390 $ source webhob start
4391 </literallayout></para></listitem>
4392 </orderedlist>
4393 </para>
4394
4395 <para>
4396 When WebHob starts, it creates some additional files in your
4397 Build Directory.
4398 Deleting these files will cause you to lose data or interrupt
4399 WebHob:
4400 <itemizedlist>
4401 <listitem><para><emphasis><filename>webhob.sqlite</filename>:</emphasis>
4402 WebHob's database file.</para></listitem>
4403 <listitem><para><emphasis><filename>whbmain.log</filename>:</emphasis>
4404 WebHob's log file.</para></listitem>
4405 <listitem><para><emphasis><filename>whbmain.pid</filename>:</emphasis>
4406 Contains the PID of the web server.</para></listitem>
4407 <listitem><para><emphasis><filename>dsi.pid</filename>:</emphasis>
4408 Contains the PID of th bridge.</para></listitem>
4409 <listitem><para><emphasis><filename>bitbake-cookerdaemon.log</filename>:</emphasis>
4410 The BitBake server's log file.</para></listitem>
4411 </itemizedlist>
4412 </para>
4413 </section>
4414
4415 <section id='using-webhob'>
4416 <title>Using WebHob</title>
4417
4418 <para>
4419 Once WebHob is running, it logs information for any BitBake
4420 run from your Build Directory.
4421 This logging is automatic.
4422 All you need to do is access and use the information.
4423 </para>
4424
4425 <para>
4426 You access the information one of two ways:
4427 <itemizedlist>
4428 <listitem><para>Open a Browser and type enter in the
4429 <filename>http://localhost:8000</filename> URL.
4430 </para></listitem>
4431 <listitem><para>Use the <filename>xdg-open</filename>
4432 tool from the shell and pass it the same URL.
4433 </para></listitem>
4434 </itemizedlist>
4435 Either method opens the home page for the WebHob interface.
4436 </para>
4437 </section>
4438
4439 <section id='examining-webhob-data'>
4440 <title>Examining WebHob Data</title>
4441
4442 <para>
4443 The WebHob database is persistent regardless of whether you
4444 start or stop the service.
4445 The home page of the interface into the database organizes
4446 builds into areas:
4447 <itemizedlist>
4448 <listitem><para>Recent successful builds, which appear
4449 in row format in a green area.</para></listitem>
4450 <listitem><para>Recent failed builds, which appear
4451 in row format in a red area.</para></listitem>
4452 <listitem><para>Recent builds in progress, which appear
4453 in row format in a yellow area.</para></listitem>
4454 <listitem><para>All builds, which appear in row format at
4455 the end of the page.</para></listitem>
4456 </itemizedlist>
4457 </para>
4458
4459 <para>
4460 Each entry is linked to more detail on the particular build
4461 or recipe.
4462 You can click on the links to learn more information.
4463 </para>
4464
4465 <para>
4466 When you click on a failed recipe link, you can find out
4467 information such as the work directory, the pathname to the
4468 failing recipe, the exact error message, and precursor tasks.
4469 </para>
4470
4471 <para>
4472 Clicking on a successful build provides you with configuration,
4473 task, and package information along with directory structure,
4474 build time, CPU usage, and disk I/O information.
4475 </para>
4476 </section>
4477
4478 <section id='stopping-webhob'>
4479 <title>Stopping WebHob</title>
4480
4481 <para>
4482 Stop the WebHob service with the following command:
4483 <literallayout class='monospaced'>
4484 $ source webhob stop
4485 </literallayout>
4486 The service stops but the WebHob database remains persistent.
4487 </para>
4488 </section>
4489 </section>
4490
4322 <section id="platdev-oprofile"> 4491 <section id="platdev-oprofile">
4323 <title>Profiling with OProfile</title> 4492 <title>Profiling with OProfile</title>
4324 4493