vFoglight™ 5.2.
© 2008 Quest Software, Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this guide is furnished under a software license or nondisclosure agreement. This software may be used or copied only in accordance with the terms of the applicable agreement.
Table of Contents Introduction to this Guide ...................................................................................................................................7 About vFoglight ................................................................................................................................................................ 8 About this Guide...........................................................................................................................................
vFoglight Web Component Tutorial Summary ........................................................................................................................................................................ 47 Additional Activities ................................................................................................................................................ 47 Saving the Tutorial1 Module ..................................................................................................
Table of Contents 5 Tutorial 5: Reports .............................................................................................................................................95 Objectives of Tutorial 5 ...................................................................................................................................................96 Designing the Page.....................................................................................................................................
vFoglight Web Component Tutorial
Introduction to this Guide This chapter provides information about what is contained in the vFoglight Web Component Tutorial. It also provides information about the vFoglight documentation suite and Vizioncore. This chapter contains the following sections: About vFoglight..............................................................................................................................8 About this Guide................................................................................................
vFoglight Web Component Tutorial About vFoglight vFoglight helps IT organizations understand the virtual infrastructure by managing the relationships and interaction between all the components in the environment, including data centers, data stores, clusters, resource pools, hosts and virtual machines.
Introduction to this Guide vFoglight Documentation Suite 9 Chapter 7, Creating a Form—Using submit actions vFoglight Documentation Suite The vFoglight documentation suite is made up of the core documentation set, plus the documentation set for each vFoglight cartridge that you deploy. Documentation is provided in a combination of online help, PDF and HTML. • Online Help: You can open the online help by selecting the Help tab from vFoglight’s action panel.
vFoglight Web Component Tutorial • What’s New Guide (PDF) • System Requirements and Platform Support Guide (PDF) • Installation and Setup Guide set (all in PDF format): • Installation and Setup Guide—Installing on Windows with an Embedded MySQL Database • Installation and Setup Guide—Installing on Windows with an External MySQL Database • Installation and Setup Guide—Installing on Windows with an External Oracle Database • Administration and Configuration Guide (PDF and online help) • vFoglight User Gu
Introduction to this Guide Text Conventions 11 info@vizioncore.com Please do not submit Technical Support related issues to this email address. Text Conventions The following table summarizes how text styles are used in this guide: Convention Description Code Monospace text represents code, code objects, and commandline input.
vFoglight Web Component Tutorial Financial Services, Government, Healthcare, Manufacturing, and High Tech. Vizioncore, Inc. can be found in offices around the globe and at www.vizioncore.com.
Introduction to this Guide About Vizioncore Inc.
Contacting Dell Note: If you do not have an active Internet connection, you can find contact information on your purchase invoice, packing slip, bill, or Dell product catalog. Dell provides several online and telephone-based support and service options. Availability varies by country and product, and some services may not be available in your area. To contact Dell for sales, technical support, or customer service issues: 1 Visit http://support.dell.com.
Austria (Vienna) International Access Code: 900 Country Code: 43 City Code: 1 Bahamas Barbados Belgium (Brussels) Bolivia Brazil International Access Code: 00 Country Code: 55 City Code: 51 British Virgin Islands Brunei Country Code: 673 Canada (North York, Ontario) International Access Code: 011 Support.euro.dell.com Web Address Tech_support_central_europe@dell.
Chile (Santiago) Country Code: 56 City Code: 2 China (Xiamen) Web Address E-Mail Address Sales and Customer Support Technical Support Web Address Technical Support E-Mail Address Country Code: 86 Customer Service E-Mail Address City Code: 592 Technical Support Fax Technical Support – Dimension and Inspiron Technical Support – OptiPlex, Lattitude and Dell Precision Technical Support – Servers and Storage Technical Support – Projectors, PDAs, Switches, Routers, etc Technical Support – Printers Customer Ser
Dominican Republic Ecuador El Salvador Finland (Helsinki) International Access Code: 990 Country Code: 358 City Code: 9 France (Paris) (Montpellier) International Access Code: 00 Country Code: 33 City Codes: (1) (4) Web Address E-Mail Address Technical Support, Customer Service, Sales Web Address E-Mail Address Technical Support, Customer Service, Sales (Calling from Quito) Technical Support, Customer Service, Sales (Calling from Guayaquil) Web Address E-Mail Address Technical Support, Customer Servic
Guatemala Guyana Hong Kong International Access Code: 001 Country Code: 852 India Web Address E-Mail Address Technical Support, Customer Service, Sales E-Mail Address Technical Support, Customer Service, Sales Web Address Technical Support E-mail Address Technical Support - Dimension and Inspiron Technical Support - OptiPlex, Latitude, and Dell Precision Technical Support - Servers and Storage Technical Support - Projectors, PDAs, Switches, Routers, etc .
Ireland (Cherrywood) International Access Code: 00 Country Code: 353 City Code: 1 Italy (Milan) International Access Code: 00 Country Code: 39 City Code: 02 Jamaica Web Address Technical Support E-mail Address Business computers Home computers At Home Support Sales Home Small Business Medium Business Large Business E-mail Address Customer Service Home and Small Business Business (greater than 200 employees) General Fax/Sales fax Switchboard U.K. Customer Service (dealing with U.K.
Japan (Kawasaki) International Access Code: 001 Country Code: 81 City Code: 44 Korea (Seoul) International Access Code: 001 Country Code: 82 City Code: 2 Latin America Luxemborg International Access Code: 00 Country Code: 352 Macao Country Code: 83 Web Address Technical Support - Dimension and Inspiron Technical Support outside of Japan - Dimension and Inspiron Technical Support - Dell Precision, OptiPlex, and Latitude Technical Support outside of Japan - Dell Precision, OptiPlex, and Latitude Techni
Malaysia (Penang) International Access Code: 00 Country Code: 60 City Code: 4 Mexico International Access Code: 00 Country Code: 52 Montserrat Netherlands Antilles Netherlands (Amsterdam) International Access Code: 00 Country Code: 31 City Code: 20 New Zealand International Access Code: 00 Country Code: 64 Nicaragua Norway (Lysaker) International Access Code: 00 Country Code: 47 Panama Peru Support.ap.dell.
Poland (Warsaw) International Access Code: 011 Country Code: 48 City Code: 22 Portugal International Access Code: 00 Country Code: 351 Puerto Rico St. Kitts and Nevis St. Lucia St.
Spain (Madrid) International Access Code: 00 Country Code: 34 City Code: 91 Sweden (Upplands Vasby) International Access Code: 00 Country Code: 46 City Code: 8 Switzerland (Geneva) International Access Code: 00 Country Code: 41 City Code: 22 Web Address Home and Small Business Technical Support Customer Service Sales Switchboard Fax Corporate Technical Support Customer Service Switchboard Fax Web Address Technical Support Relational Customer Service Home/Small Business Customer Service Employee Purchas
U.K.(Bracknell) International Access Code: 00 Country Code: 44 City Code: 1344 Uruguay U.S.A.
U.S. Virgin Islands Venezuela Web Address E-mail Address Technical Support, Customer Service, Sales Web Address E-mail Address Technical Support, Customer Service, Sales www.dell.com/vi la‐techsupport@dell.com toll‐free: 1‐877‐702‐4360 www.dell.com/ve la‐techsupport@dell.
2 Using the Web Component Tutorial This chapter contains the following sections: Introduction..................................................................................................................................28 How to Use this Tutorial ..............................................................................................................33 Printing the Tutorial .....................................................................................................................
vFoglight Web Component Tutorial Introduction You may already know how to view the performance of your servers and applications with vFoglight and use it to monitor each component of the technology stack to detect and alert application owners of problems before they affect performance.
Using the Web Component Tutorial Introduction 29 inform application and IT managers about end-user service levels, notify stakeholders when those service levels are violated, and assign problem resolution tasks to the appropriate domain experts. Custom views that focus on known trouble spots can help establish processes for quick recovery from system failure.
vFoglight Web Component Tutorial What is the Web Component Framework? The Web Component Framework is a superset of the View Component collection that contains other control components, such as renderers. It is used to build thin client interfaces for products that are primarily (but not necessarily) in the systems management domain. This is the framework you will use in this tutorial. The Web Component Framework is written in Java and is capable of running in a web container such as Tomcat.
Using the Web Component Tutorial Introduction 31 • Time Range: if available, applies to all views • Nothing: if multiple time ranges are represented • Page Scope Actions, such as • View menu: actions you can perform on the view • Help menu: help for all components on the current page • Optional Page Scope Actions, such as: • Time Range: change the time range of the page • View menu: in a browser, causes a switch to a different page View Layouts These layouts are available: Grid • Views can size themselve
vFoglight Web Component Tutorial The implementation of the data source must provide a schema for the objects. The schema can be changed dynamically.
Using the Web Component Tutorial How to Use this Tutorial 33 How to Use this Tutorial This tutorial will help you to learn how to use the vFoglight Configuration area to create custom views that present collected data in a way that makes the most sense to you. It is aimed at users who want to provide their clients with a specially-tailored set of views to augment the default views.
vFoglight Web Component Tutorial Reference. To access the Web Component Reference, open Web Component Reference > View Components in online help. Use the table of contents in the left pane to navigate to the information you need.
3 Tutorial 1: Creating a Dashboard The term dashboard is used in vFoglight to denote a container that presents a pre-set collection of visual data, but does not necessarily require any user interaction to complete the picture. Technically, a dashboard cannot have any required context inputs, although it can define additional context entries.
vFoglight Web Component Tutorial Before You Start The first thing you have to decide is whether you want to take the top-down or the bottom-up approach. In the top-down approach, you create the dashboard first, then you populate it with components. In the bottom-up approach, you focus on the information you want to display, which forces you to think about which query or queries you want to build and how you want to present the results, such as in a table, or a chart, or some other component.
Tutorial 1: Creating a Dashboard Configuring a Query 37 UI Walkthrough We will be using the Configuration > Definitions page as shown in the figure. It contains all the functionality needed to create new customized views as well as allowing someone with proper permissions to edit existing modules. The Module List pane at the upper left side of the window lists all the modules for which definitions exist. We are going to be configuring a user query in your user area, so select My Definitions.
vFoglight Web Component Tutorial the data source information about all the hosts in our monitored system. To accomplish this task, it is helpful to understand something about Data Source Types, Data Source IDs, Object Types, and paths in the data object graph. Note There are other parameters that may be used with a query, such as Aggregations, filtering the top N results, order by, and the familiar where clause.
Tutorial 1: Creating a Dashboard Configuring a Query 39 Checking this box indicates that the view is likely to be deleted or replaced by something else in the future. In addition, if selected, this property prevents the component from being used as a child component in new views. 7 The Comments and Context Help text fields are for describing the purpose of the query to developers and end users. You can supply descriptive text in these fields if you wish, but they are not needed for the tutorial.
vFoglight Web Component Tutorial The Query Results dialog allows you to see all the properties of the object, which is useful if you want to determine their names for use later on. 15 Click Close. 16 Click Save on the New Query’s menu to save the query. The tab is renamed to Active Hosts. Configuring a Row-Oriented Table After completing the task in Configuring a Query you have a query that returns a list of hosts. The next step is to use the query to populate the rows of a table.
Tutorial 1: Creating a Dashboard Configuring a Row-Oriented Table 41 point icon at the right side of the field. In this case, only the Name field is required. 7 Type Monitored Hosts in the Name field. You will use this name to refer to the Row-Oriented Table component later. 8 Leave Public unchecked. 9 Ensure that Deprecated is unchecked. 10 Set Preferred Width and Preferred Height. You can edit these values later when you have seen the table displayed, so you can choose any values you want.
vFoglight Web Component Tutorial To define the columns for the table: 1 Select the Configuration tab. The table designer page appears in the right Definitions pane. Leave Show Advanced Properties unchecked. 2 We need to tell the table that its rows will be populated from a query. Locate the row called Rows. Click the edit icon ( popup. ) and choose Query Selection from the The Edit - Rows dialog appears. 3 Click the Query browse button ( ), locate the Active Hosts query and select it.
Tutorial 1: Creating a Dashboard Configuring a Row-Oriented Table 43 8 Choose Context Selection from the popup list. The Edit - Value dialog opens. 9 Click the button at the right of the Input Key field and choose currentRow from the popup. 10 Click the browse button at the right of the Path field and choose name from the popup. We want the name of a host to appear in this column of the table, so you might think you should choose /name instead of /name. That won’t work.
vFoglight Web Component Tutorial Building the Dashboard So far we have a query and we have a table to present some of the data that will be returned by the query. Now we need to configure a dashboard and place the table in it. To configure a dashboard and add the table: 1 Select the Views tab in the Module Contents pane and then click the Add button ( ). The New View dialog appears. 2 Ensure that Blank view is selected and click the browse button ( ).
Tutorial 1: Creating a Dashboard Building the Dashboard 45 8 Leave Priority at None. 9 Set the Purpose(s) check boxes by clicking the Edit icon ( ). Since the component is a dashboard, check the Dashboard box and leave all the other boxes unchecked. Click Apply to save the setting and close the popup. 10 Leave Custom Purpose(s), Relevant Role(s), and Allowed Role(s) untouched. 11 Fill in the Comments and Context Help fields with any descriptive text that you feel is appropriate.
vFoglight Web Component Tutorial To define the dashboard’s title: 1 Select the Configuration tab. 2 Click the Edit icon ( ) in the Value column of the Title row and choose String Template from the drop-down list. The Edit - Title dialog opens. 3 Type All Monitored Hosts in the Value field and click Save. Next we will add our table, Monitored Hosts, to the dashboard. To add the table to the dashboard: 1 Select the Layout tab. The layout editor appears in the Definitions pane.
Tutorial 1: Creating a Dashboard Summary 47 Figure 2 Summary In this tutorial you have constructed a query, used it to populate the rows of a table, and presented that table in a fixed-layout view component that we are calling a dashboard. You have viewed the component by navigating to All Hosts in the Dashboards area under My Dashboards.
vFoglight Web Component Tutorial 2 Click anywhere in the rectangle allocated to Monitored Hosts. Its border becomes highlighted. 3 Click the Properties tab. 4 In the Properties dialog, clear the boxes for Show Title and Show Border. Note You can change the width of the table here too. The value you enter here overrides the preferred width in the General tab, so setting a width there doesn’t actually have an effect. 5 Save the changes and view the result.
4 Tutorial 2: Adding a Drilldown Page In Tutorial 1 you created a top level dashboard that contains a table of host names. Now, in Tutorial 2, it is time to show you how to add more columns to the table and how to create a dependent page that supplies information about any host selected from the table. This is often called a drilldown page because the information it presents depends on which host is selected in the parent page.
vFoglight Web Component Tutorial Objectives of Tutorial 2 There are two main ways of presenting visual information about a group of objects. One is to list the objects on a page and to organize it so that the information about each object appears with it on the same page. We chose a table layout in Tutorial 1 with this objective in mind. We can add other bits of information to the same row as the host and keep things together that way.
Tutorial 2: Adding a Drilldown Page Adding an Alarm Icon to the Table 51 The pane shows the configuration property editor for Monitored Hosts. Since all the properties we want to modify are not advanced ones, leave Show Advanced Properties unchecked. This makes for easier viewing. 6 Expand Columns. 7 Click the Add Column ( ) button. A Value row appears that contains an Edit icon ( ). 8 Click the Edit icon on the Value row. 9 Choose Context Selection from the drop-down list.
vFoglight Web Component Tutorial When you view the All Hosts dashboard, you may notice that the area assigned to the table may not be wide enough to show all of its columns without clipping the rightmost column. If this happens, edit All Hosts by choosing the Layout tab, selecting the rectangle for Monitored Hosts, and dragging its right edge. Adding a Dependent Page This task introduces the notion of Context.
Tutorial 2: Adding a Drilldown Page Adding a Dependent Page 53 designated, already-existing views in cells. A later tutorial will illustrate more of the Grid’s properties. When adding a view, you can specify the row and column in which it is to be placed. The row and column indices are zero-based, so the top-left cell is in column 0 of row 0. We will place a single component, a host monitor page, in this cell.
vFoglight Web Component Tutorial Define a Context Input 1 Still in Host Monitor, choose the Context tab. 2 Click the Add Context Input ( ) button under Inputs. A new row appears. 3 Click on it to launch the Edit dialog. 4 In the Edit dialog, type host in the Key field. 5 Set Usage to Required. 6 Set Data Source Type to Foglight. 7 Set Data Type to Host.
Tutorial 2: Adding a Drilldown Page Adding a Dependent Page 55 8 Ensure List is False. This key is being used to pass a single host to drilldown pages. 9 Click Save on the dialog and on the tab on Host Monitor’s toolbar to save your work so far. Define a Flow The following steps direct the rows of the table to a view called Host Monitor and pass the required context. To configure the flow: 1 Return to editing Monitored Hosts. 2 Select the Flow tab. 3 Choose Row Selection.
vFoglight Web Component Tutorial 9 Choose the Context tab and observe that an entry called host has been added to the Inputs section. 10 Click Save on the toolbar to save the changes you made to Monitored Hosts. If you test the page at this point, you’ll see that by clicking on a row of Monitored Hosts you do go to a new, blank page. The breadcrumb history trail at the top right side of the page displays “All Monitored Hosts > Host Monitor.
Tutorial 2: Adding a Drilldown Page Summary 57 11 Click a row of the table to drill down to Host Monitor. The figure shows a sample result. In the top-left component in the figure there is a host name, which is the one that was selected from Monitored Hosts. Each different row selection in the table launches a view that presents data coming from the selected host. The overall construction of the view is always the same, but the data presented in the view comes from the chosen host.
vFoglight Web Component Tutorial A new group is created. Its expanded view appears. Click the Edit icon ( the new column’s Value row. ) in 3 Choose Context Selection in the popup that appears. 4 In the Edit - Value dialog, choose currentRow as the Input Key, and alarmTotalCount as the Path. 5 Click Save in the Edit - Value dialog. 6 Click the button ( ) to move the column up so that it appears between aggregateState and name. 7 Save your changes and view the result.
5 Tutorial 3: Adding Views In Tutorial 1 you created a top level dashboard that contained a table of host names. In Tutorial 2, you created a dependent page that contained a pre-built view. In Tutorial 3, you will add views that you yourself create. You will learn about five additional components: key-value listing, chart, button, dropdown list, and customizer. This chapter contains the following topics: Objectives of Tutorial 3................................................................................
vFoglight Web Component Tutorial Objectives of Tutorial 3 The objectives of this tutorial are to place components on a drilldown page whose content depends on the particular choice made in the parent page, and also to introduce three new components for you to work with. The tasks you will complete are: • Add a drilldown Grid page that presents information about the chosen host.
Tutorial 3: Adding Views Designing the Page 61 Designing the Page The objectives for Tutorial 3 have listed the components we are going to use, so all that needs to be done to design the page is to specify its layout. The table below shows how the components will be arranged. My Hosts dependent page for Tutorial 3: a Grid layout with two columns Above the grid A Customizer that places itself above and to the left of the View and Help buttons on the title bar.
vFoglight Web Component Tutorial To configure a query returning Alarms that is passed a Host as a parameter: 1 Choose Configuration > Definitions in the module you are using for this tutorial. 2 Select the Queries tab in the Module Definitions pane. 3 Click the Add button in the Module Definitions pane. The New Query dialog appears. 4 Ensure that Blank Query is chosen, select Foglight as the Data Source Type, and click OK.
Tutorial 3: Adding Views Defining the Alarms Query 63 Note that a Root Path of {host} was chosen. The query requires that a host be passed to it and then only alarms for that host will be returned. 5 At this point we have constructed a valid query. Test it by clicking the Test button, which is just below the bar containing the tabs. No results can appear until you specify a host, which is the required input to the query. Use the Input Values dialog to choose a host.
vFoglight Web Component Tutorial The Query Results dialog appears, showing a list of alarms. 7 Close the Query Results dialog. 8 Click Save to save the query. Configuring a Table of Alarms In this exercise you are going to build a generic table that lists alarms. When the table is actualized, the data in the table will depend on which host was chosen from the parent dashboard. Choosing a particular host in the parent dashboard is the action that triggers the display of the alarm table.
Tutorial 3: Adding Views Configuring a Table of Alarms 65 Adding Columns to the Table To add columns you use the Configuration tab, but before you do, define a Context to tell the component that it will require an object of type Host for its operation. To set the context: 1 Select the Context tab. 2 Click the Add Context Input button ( ) and click on the new row to launch the Edit dialog. Declare a context using the information in the figure: 3 Click Save.
vFoglight Web Component Tutorial These steps cause the context key host to be made available to the table. As you did in Tutorial 2, you will configure My Hosts page to pass Host values to the table. To add a severity column to the table: 1 Select the Configuration tab. The table designer page appears in the right pane. 2 We need to tell the table that its rows will be populated from a query. Locate the row called Rows. Click the edit icon ( popup.
Tutorial 3: Adding Views Configuring a Table of Alarms 67 10 Choose Context Selection from the drop-down list. The Edit - Value dialog opens. 11 Click the button at the right of the Input Key field and choose Current Row from the list. 12 Click the button at the right of the Path field and choose severity from the list. This choice will place a severity icon in column one. 13 Click Save in the Edit - Value dialog. Next, we will add a column to display alarm messages.
vFoglight Web Component Tutorial We will illustrate another use of parameters by giving the table a title that contains the name of the host. To add a parameterized title to the table: 1 Click the Edit icon ( ) on the Title row. 2 Choose String Template. The Edit - Title dialog appears. 3 Type Alarms Table for {0} in the Value field. The construct {0} designates a positional parameter.
Tutorial 3: Adding Views Configuring a Key-Value Listing Component 4 Choose Key-Value Listing. Note that this component is also available under the Common node. Fill in the properties on the General tab as shown in the figure: 5 Since you are going to add this component to a page, check the Pagelet box in Purpose(s).
vFoglight Web Component Tutorial 6 Enter A key-value listing component for CPU state in both the Comments and the Context Help text fields. Configuring the Columns in the Key-Value Listing Component This component needs a host context as well, so you will define it first. To set the context: • Follow the first procedure in Adding Columns to the Table to make a single Host object a required input. Now you can define the columns for the Key-Value Listing table.
Tutorial 3: Adding Views Configuring a Chart Component 71 To add a title to the Key-Value Listing table: 1 Click the Edit icon ( ) on the Title row. 2 Choose String Template. The Edit - Title dialog appears. 3 Type Alarms for {0} in the Value field. The construct {0} designates a positional parameter. After you have entered this in the Value field a row appears in the dialog that allows you to set the parameter with a runtime value. 4 Click the Edit icon ( ) on the Parameter {0} row.
vFoglight Web Component Tutorial Fill in the Time Plot Chart’s General properties using the information in the figure: 6 Enter Memory utilization chart for the selected host in both the Comments and the Context Help text fields. To set the context: • Follow the first procedure in Adding Columns to the Table to make a Host object a required input. To set the chart’s data source: 1 Select the Configuration tab.
Tutorial 3: Adding Views Configuring a Label with an Action 73 10 Choose host in the Input Key field. 11 In the Path field, expand the memory node and choose utilization. 12 Click Save in the Edit - Metric dialog. 13 Click the edit icon on the Title row and choose String Template from the drop- down. 14 In the Edit - Title dialog, type Memory Utilization for {0} in the Value text box. 15 Edit the parameter. choose host for the Input Key and name for the Path. 16 Click Save.
vFoglight Web Component Tutorial 4 Click ( ) and expand the Common node. 5 Choose Label from the drop-down list. 6 Click OK. 7 Configure the properties on the General tab as shown in the figure: 8 Enter A label acting as a button. Its action upon selection is to return to the page containing a list of all hosts in the system in both the Comments and the Context Help text fields. To set the label’s text: 1 Select the Configuration tab.
Tutorial 3: Adding Views Configuring the Drilldown Page 75 When you add this component to the Grid page you can choose to show the title. If not, only the Label will appear. To set a flow action on the label: 1 Select the Flow tab. 2 Click on the Selection row. The Edit - Selection dialog appears. 3 Ensure that the Leave unspecified check box is unchecked. 4 In the Flow type drop-down, choose Previous. 5 Click Save in the Edit - Selection dialog. 6 Click Save on the toolbar to save the Label component.
vFoglight Web Component Tutorial 5 Expand My Views. 6 Choose Host State T3 then click Next. Now we are adding the chart. 7 Set Width to 350 pixels. 8 Set Height to Automatic. 9 Set Row to 0 and Column to 0. This places the Key-Value Listing component just below the upper-left cell in the table. 10 Check both Show Title and Show Border. 11 Leave all other fields with their default settings. 12 Click Finish on the Add View dialog.
Tutorial 3: Adding Views Configuring the Drilldown Page 77 3 In the Add View dialog, choose Select existing view and click Next. 4 Ensure the purpose and validity boxes are checked. 5 Expand My Views. 6 Choose Alarm Table for Host T3 then click Next. Now we are adding the table of alarms. 7 Set Width to 425 pixels. 8 Set Height to 400 pixels. 9 Set Row to 1 and Column to 0. This places the Row-Oriented Table component in the cell to the right of the KeyValue Listing component. 10 Set the row span to 2.
vFoglight Web Component Tutorial 12 Click Finish on the Properties dialog. 13 Click Save on the toolbar to save the changes you made to Host Details T3. Configuring a Drop-Down List This example illustrates another way of changing the contents of a page. In this case, the page updates with information about another host that you choose from a Drop-Down List component. To define a Drop-Down List component: 1 Choose Configuration > Definitions and ensure that your tutorial module is selected.
Tutorial 3: Adding Views Configuring a Drop-Down List 79 To set the context: • Follow the procedure (under To set the context) in Adding Columns to the Table to make a Host object a required input. To set the items for the drop-down list: 1 Select the Configuration tab. 2 Click the Edit icon on the Items row. 3 Choose Query Selection in the drop-down. The Edit - Items dialog appears. 4 Choose Active Hosts in the Query field after expanding the My Queries node. 5 Click Save in the Edit - Items dialog.
vFoglight Web Component Tutorial To add the drop-down List component to Host Details T3: 1 Go back to editing Host Details T3 in the Layout tab. 2 Click the Add button. 3 In the Add View dialog, choose Select existing view and click Next. 4 Ensure the purpose and validity boxes are checked. 5 Expand My Views. 6 Choose Host Chooser DDL T3 then click Next. Now we are adding the table of alarms. 7 Set Width to 350 pixels. 8 Set Height to Automatic. 9 Set Row to 2 and Column to 1.
Tutorial 3: Adding Views Adding a Customizer 81 Adding a Customizer The last exercise introduced you to the customizer component, which is a handy way to add a link on a parent page to another related view. When you add the customizer to a Portlet, the link appears at the top right of the component’s area. To add a customizer to a page: 1 Edit Host Details T3. 2 Select the Layout tab. 3 Select ( )Define Customizer. The Customizer dialog appears.
vFoglight Web Component Tutorial Summary In this tutorial you have been shown how to use parameters in queries and some new components have been introduced. At this point you can begin building more complex designs by consulting the Web Component Framework pages, which are also available in the vFoglight online help. Additional Activities • Investigate what effect changing the time range has on CPU Memory Utilization Chart: T3 and possibly on Host State T3.
6 Tutorial 4: Using a Grid This tutorial illustrates some of the more advanced properties of the Grid component. As well, the tutorial outlines how to perform a deep copy of an existing view and how to place a component in the navigation panel. This chapter contains the following topics: Before Building the Dashboard:...................................................................................................84 Using a List as a Chooser .................................................................
vFoglight Web Component Tutorial Before Building the Dashboard: Perform a deep copy of [chart] Disk I/O Utilization from the module Hosts > Host. This gives you your own copy of the component, which you can edit any way you want. Do this by navigating to Hosts > Host in the Module List pane and selecting the view in the Module Contents Pane. When the component’s definition appears in the Definitions pane, click Copy > Deep and select My Definitions in Select Target Module.
Tutorial 4: Using a Grid Before Building the Dashboard: 2 Click the Edit ( 85 ) button on the row for the property called Visible. The Edit - Visible dialog opens. 3 Check the box labeled Boolean Value and click Save. Save the changes you have made to the chart component. These are the only changes you need to make to the chart after you have copied it from the Hosts > Host system module.
vFoglight Web Component Tutorial Using a List as a Chooser One purpose of this tutorial is to help you investigate the layout properties of the Grid component. Once more, we’ll choose the familiar example of a host. Rather than limiting you to a single host, we’ll use a Drop-Down List to let you pick any host in your monitored system. We could have built a top-level dashboard that listed all hosts, as we did in Tutorial 1, and then configured a drill down page as a grid displaying host information.
Tutorial 4: Using a Grid Building the Dashboard 87 To configure the General page of the dashboard: 1 Ensure that the Views tab in the Module Contents pane is selected. 2 Click the Add button ( ) in the Module Contents pane. The New View dialog appears. 3 Ensure that Blank view is selected. 4 Click the browse button ( ), expand the Containers group and choose Grid from the drop-down list. 5 Click OK.
vFoglight Web Component Tutorial 8 Click Save to save your work so far, and then click Edit to continue modifying the dashboard. Set a Context Define a Context to tell the component that it may accept an object of type Host for its operation and supply the component with an initial value for the Host object. You will configure this dashboard to permit the choice of a different host and then update itself. To set the context: 1 Select the Context tab.
Tutorial 4: Using a Grid Building the Dashboard 89 5 Select Active Hosts in My Queries. Copy it from WCFTutorial3 if necessary. 6 Check Return First Object in List. 7 As an example of setting an On Null value, complete this step. Null values occur when a query fails to return any objects at all. In this case, you are setting a null value in case the query fails to return any objects of type Host. Click the edit icon for On Null and choose String Template. Type No Hosts! and click Save.
vFoglight Web Component Tutorial Adding the Views You will populate the grid with some existing views. First, we’ll add a host chooser by placing a Drop-Down List in the dashboard. To modify the Drop-Down List for this tutorial: 1 Open Host Chooser DDL T3 for editing. 2 Select the Flow tab. 3 Switch Selection to Update, keeping host as the Selected Item. This flow action updates the page and passes the selected host as a context input, so that data for that host is displayed.
Tutorial 4: Using a Grid Building the Dashboard 91 To add an Alarm List with Filter: 1 Add Alarm Table for Host T3 from the module My Definitions using the information in the following figure. The last component to be added is another chart. Rather than building the chart from scratch, copy an existing chart and place the copy in My Definitions. To add a disk I/O utilization chart: 1 By now, you should have performed a deep copy of [chart] Disk I/O Utilization from the module Hosts > Host.
vFoglight Web Component Tutorial chart, and then resume editing the grid. The instructions for deep copying the chart are given at the beginning of this chapter. 2 Add [chart] Disk I/O Utilization from the module My Definitions using the information in the following figure. 3 Save the Grid. The Grid is ready for testing. As you have done before, in Dashboards select the module containing your work and choose Hosts T4. You should see something similar to what is shown in the figure.
Tutorial 4: Using a Grid Summary 93 Note that there is a possible problem associated with the first component, the drop-down list. If there are many hosts in the monitored system, the list will fill the available space when it is opened and you might not be able to scroll down to the lower items. Also note the difference between the layout of the two chart components.
vFoglight Web Component Tutorial Another solution is possible. A Column layout can be chosen instead of a Grid. In a Column layout, a cell’s dimension is independent of its neighbor on either side. Thus, each cell in a column can have the vertical height that it needs without causing spacing problems in adjacent columns. In other cases, a Row layout may be appropriate.
7 Tutorial 5: Reports By now you should be comfortable with creating and using some of the commonly-used components in the Web Component Framework. We’ll put them to work in this tutorial to show you how to create a report. There are a number of report examples that are included in the vFoglight user interface, but it is likely that as you become more experienced you will want to create your own reports that match your exact needs. This tutorial will get you started.
vFoglight Web Component Tutorial Objectives of Tutorial 5 PDF reports are useful for archiving the status of your systems as well as for communicating its recent operational level to interested parties. Whatever your needs, the ability to create informative reports is important. The information needed in a report and the way it should be displayed vary from one enterprise to another, so typically reports are designed on site to meet local needs.
Tutorial 5: Reports Configuring a Query 97 Report layout for Tutorial 5: Header Single page: Utilization Summary for All Hosts Iterated page: System Load Summary. Each page presents a time plot of host statistics and a table of high, low, and average values for selected metrics for the chosen time period.
vFoglight Web Component Tutorial 7 Select the Object Type by clicking the drop-down arrow at the right of this field. Choose HostModel from the drop-down list. HostModel is the name of the object that contains a list of all the host model objects known to vFoglight. You’ll be able to browse this object as soon as we set the path in the next step. Note This list box responds to keystrokes, so you can type H and be taken close to the desired entry. Type H repeatedly to advance to the entry you require.
Tutorial 5: Reports Creating a Basic Report Page 99 5 Ensure that Public and Deprecated are unchecked. 6 Set Preferred Width and Preferred Height. Actually, the page size is controlled elsewhere. For now, set Preferred Width to 540 and Preferred Height to 500. 7 Leave Refresh Interval blank. 8 Leave Priority at None. 9 Set the Purpose(s) check boxes. Since the component is a report, check the box labeled Report and leave all the other boxes unchecked. Click Apply.
vFoglight Web Component Tutorial 5 Choose Host Model T5 (from My Queries) in the Query Selection Runtime Value text field. 6 Check Return First Object in List. 7 In the dialog, click Save. You’ll use this context input to the table of hosts that you will construct shortly. To define a context entry “hosts” for a list of hosts contained in the host model: 1 Click the Add Context Entry button ( ) in the Additional section of the Context tab. A new row appears.
Tutorial 5: Reports Creating a Basic Report Page 101 The Edit - Title dialog opens. 3 Choose title in the Input Key drop-down list and click Save. Since you have previously set this context to Utilization Report - Hosts, that is the title that will appear if you embed the report in a container and set its Show Title property to true. 4 Click the Edit icon ( ) from the Value column on the Page Orientation row and choose Portrait.
vFoglight Web Component Tutorial The table doesn’t have a header or a footer and it contains only one view, but the exercise has shown you the basic steps for creating a report. Creating a More Elaborate Hosts Table A table such as the one you just used serves as a useful introductory item to a report that provides historical data about the hosts monitored by vFoglight. It can be refined to show numerical data supplemented by time plots. This time you will build it yourself.
Tutorial 5: Reports Creating a More Elaborate Hosts Table 103 Configuring the Columns for the Row-Oriented Table This component needs a host context as well, so you will define it first. To set the context: 1 Select the Context tab. 2 Click the Add Context Input button ( ) in the Inputs group. A new row appears. 3 Click on the new row to launch the Edit dialog. 4 Type hosts in the Key field. 5 Ensure that Usage is Required. 6 Set Data Source Type to Foglight. 7 In the drop-down, set Data Type to Host.
vFoglight Web Component Tutorial All the table’s columns are set in this section. Later, they can be organized in groups. 6 Click the Edit ( ) icon on the column’s Value row and choose Context Selection from the popup. The Edit - Value dialog appears. 7 Select currentRow for the Input Key. 8 Choose name for the Path. 9 Click Save in the Edit - Value dialog. 10 Check Show Advanced Properties so that you can set the header for this /name column.
Tutorial 5: Reports Creating a More Elaborate Hosts Table 105 2 Click the Edit ( ) icon on the column’s Value row and choose Context Selection from the popup. 3 Select currentRow for the Input Key and cpus/aggregateState for the Path, and then click Save. 4 Click the Edit ( ) icon on the column’s ID row and enter CPU Aggregate State for the String value. 5 Repeat the previous steps, but change the ID values and Path components to: Note that the two following settings use renderers.
vFoglight Web Component Tutorial 5 Add the table to the report as you did in Adding a Sample Page to the Report. 6 In the report’s Views tab, select the table and click Properties in the tab’s toolbar. 7 Save the changes to Hosts Summary Report T5. Generating the Table Test the work you have done so far by generating a PDF of the table. To generate the report: 1 Ensure that Load Summary Table T5 is available in the Definitions pane.
Tutorial 5: Reports Adding a Header 107 2 Fill in the General tab as shown in the figure: 3 Enter Header for Hosts Summary Report T5 in both the Comments and the Context Help text fields. To set the context: 1 Select the Context tab. 2 Click the Add Context Input button ( ) in the Inputs group. A new row appears. 3 Click on the new row to launch the Edit dialog. 4 Type title in the Key field. This is the context you set in the parent report. 5 Ensure that Usage is Required.
vFoglight Web Component Tutorial The Edit - Left Image dialog appears. 3 Choose Icon Selection, vFoglight > Reporting > Company Logo. 4 In the dialog, click Save. Set the center portion of the header: 5 Click the Edit icon ( ) on the Center row. The Edit - Center dialog appears. 6 Choose Context Selection from the drop-down list. 7 In the Input Key drop-down list, choose title. 8 In the dialog, click Save. Set the right portion of the header: 9 Click the Edit icon ( ) on the Right row.
Tutorial 5: Reports Adding a Footer 109 6 Click Save in the dialog. 7 Select Header from the Function drop-down. 8 Select the header and click the Move Up ( ) button to place the component as the first view. 9 Click Save on the bar containing the tabs to save Hosts Summary Report T5. Adding a Footer You saw how to add items to all three places in the header, and the footer component is simpler.
vFoglight Web Component Tutorial Setting the center portion of the footer To add a page number to the footer: 1 Select the Configuration tab. 2 Click the Edit icon ( ) on the Center row. The Edit - Center dialog appears. 3 Choose String template from the drop-down list. 4 In the Value drop-down list, type - {0} -. The dialog now shows a line for Parameter {0}. By using a parameterized entry for the page number you can add text decorations around it.
Tutorial 5: Reports Adding an Iterator for a Multi-Page Report 111 8 Select the header and click the Move Up ( ) button to place the component as the second view, in between Header: Icon, Report Title, Time Range T5 and Hosts Table - For Given Hosts. 9 Click Save on the bar containing the tabs to save Hosts Summary Report T5. Test the report Test the report by clicking the Test PDF ( ) button on Host Summary Report T5’s menu bar.
vFoglight Web Component Tutorial 6 Enter Iterator for Hosts Summary Report T5 in both the Comments and the Context Help text fields. To set the context: 1 Select the Context tab. 2 Click the Add Context Input button ( ) in the Inputs group. A new row appears. 3 Click on the new row to launch the Edit dialog. 4 Type hosts in the Key field. 5 Set Usage to Required. 6 Set Data Source Type to vFoglight. 7 In the drop-down, set Data Type to Host. 8 Set List to True. 9 In the dialog, click Save.
Tutorial 5: Reports Adding an Iterator for a Multi-Page Report 113 5 Click the Edit icon on the Objects row and choose Context Selection from the drop-down list. The Edit - Objects dialog appears. 6 Choose hosts in the Input Key drop-down list. 7 Click Save in the Edit - Objects dialog. Choosing the Iterated View You can choose or construct any view whose inputs are host objects, since that is a context that was set in Hosts Summary Report T5 itself.
vFoglight Web Component Tutorial No other changes are needed because the Body page is the default. 7 Click Save on the bar containing the tabs to save Hosts Summary Report T5. Summary In this tutorial you have been shown how to prepare a report with a header and a footer. You saw how to use an Iterator component to generate multiple views based on a list, thus creating a multi-page report.
Tutorial 5: Reports Summary 115 5 Click Save on the bar containing the tabs to save Sparkline for Report. To add a column containing a sparkline to the table: 1 Return to editing Load Summary Table T5. 2 Add a column. Set its context selection to: /cpus/ percentUserTime, using the Renderer: Sparkline for Report from your User module. Set its ID to CPU User Time. 3 Add the column to the CPU Utilization group. 4 Save your changes and test the result.
vFoglight Web Component Tutorial Where did the table’s title go? If you followed exactly the procedures given previously, you may have noticed that even though you set the table’s title to Utilization Report - Hosts, it didn’t appear when you generated the PDF. The situation is quite similar to the point raised in Additional Activities in Tutorial 2. Causing a title to appear is a two-step process, and defining the title’s content is only the first step.
Tutorial 5: Reports Summary 117 The Report Manager page opens in the Definitions pane. 3 Click Schedule Report ( ). The Create Scheduled Report dialog opens. 4 Type Host Report T5 in the Name text field. 5 In the Report Template row, click Please Select Report Template, expand the All Report Templates node, and choose Host Summary Report T5 in the Template column. The dialog (under Report Inputs) asks you to supply values for the context inputs that were defined in the report page itself.
vFoglight Web Component Tutorial A report can have multiple headers. The reason you placed the header and footer as the first and second component in the report’s View page was to have them registered by the report generator before any body views. Perhaps the table of hosts in your environment spans more than one page. If the footer was placed after the table component, it wouldn’t appear until after the table. In fact this is true even if the table contains only a few rows.
8 Tutorial 6: Creating a Form The Web Component Framework contains many components that have a value property and there are situations in which some other component may be interested in being passed that value. This tutorial begins by investigating how to configure context settings so that the value of one component can be passed to one or more other components. We’ll go one step further in this tutorial and pass the values to a Groovy task component.
vFoglight Web Component Tutorial Objectives of Tutorial 6 This tutorial shows how context can be used to pass values among components and even to internal vFoglight data structures by implementing Groovy tasks. The tutorial outlines the way that you can create forms using the Web Component Framework. You will be shown how a single submit action can pass as many context values as you like. The objectives of Tutorial 6 are: • Pass input values to interested views.
Tutorial 6: Creating a Form Overview 121 5 Leave Public and Root Query unchecked, Comments and Context Help empty, and Relevant and Allowed Role(s) untouched. 6 Ensure that the Data Source ID field’s value is . 7 Select the Object Type by clicking the drop-down arrow at the right of this field. Choose Host from the drop-down list. Note This list box responds to keystrokes, so you can type H and be taken close to the desired entry. 8 Set the Root Path.
vFoglight Web Component Tutorial Task Components There are three tasks, one each for adding a host, removing a host, and editing a host’s annotation property. • Add a host—A groovy script that passes two context values, one for host name and one for operating system name, to the underlying topology service to create a new node. It requires two context entries, hostName and operatingSystem.
Tutorial 6: Creating a Form Creating the Tasks and Forms 123 Delete host Before choosing Delete in the All Hosts table, ensure that the selected row is one of the dummy hosts that you have added using the Add button. You don’t want to delete one of your actual hosts. The Host List table has a Row Selection flow whose action is Update. Once a row has been selected, it is highlighted in the UI and this context entry is updated.
vFoglight Web Component Tutorial tab and click the Add button. Choose Execute Groovy Script in the drop-down list. This will be your choice for all three task components. Use the listings given here to create and configure the tasks. You’ll note that we have suggested that you work as a special user and that you place your views in a system module called TaskTutorial, which has the advantage of keeping the views separate from everything else.
Tutorial 6: Creating a Form Creating the Tasks and Forms Component Execute Groovy Script Last Modified Time Public No Deprecated No Comments Context Help Context Inputs Key Usage Data Source Type Data Type hostName Required Common String operatingSystem Required Common String Default Value Configuration Groovy Script def hostName = @contextIn["hostName"]; def operatingSystem = @contextIn["operatingSystem"]; println hostName; println operatingSystem; topSrv = server.
vFoglight Web Component Tutorial Deprecated Comments Context Help Context Inputs No Key Usage Data Source Type Data Type hostSelected Required Foglight Host Default Value Configuration Groovy Script def hostToDelete = @contextIn["hostSelected"];topSrv = server.get("TopologyService");tempO = topSrv.getObject(hostToDelete.getUniqueId()); topSrv.
Tutorial 6: Creating a Form Creating the Tasks and Forms 127 Context Inputs Key Usage Data Source Type Data Type newAnnotation Optional Common String hostId Optional Common String Default Value Configuration Groovy Script def hostId = @contextIn["hostId"]; def newAnnotation = @contextIn["newAnnotation"]; topSrv = server.get("TopologyService"); tempO = topSrv.getObject(hostId); tempO = topSrv.beginUpdate(tempO); hostAnnotations = tempO.get("annotations"); hostAnnotations.
vFoglight Web Component Tutorial Add a host def hostName = @contextIn["hostName"]; def operatingSystem = @contextIn["operatingSystem"]; println hostName; println operatingSystem; topSrv = server.get("TopologyService"); hostIns = topSrv.getObjectShell(topSrv.getType(operatingSystem+"_Host")); hostIns.set("name", hostName); objects = topSrv.mergeData(hostIns); Remove Host def hostToDelete = @contextIn["hostToDelete"]; topSrv = server.get("TopologyService"); tempO = topSrv.getObject(hostToDelete.
Tutorial 6: Creating a Form Creating the Tasks and Forms Public Deprecated Preferred Size Purpose(s) Priority Relevant Role(s) Allowed Role(s) Refresh Interval Comments Context Help Context Inputs No No Width 0px Height 0px Page, Pagelet None (none) (none) Key Usage Data Source Type Data Type timeRange Optional Common Time Range hostName Optional Common String operatingSystem Optional Common String Default Value Configuration Note 129 Choose a String or String Template runtime value t
vFoglight Web Component Tutorial Views Name Component Size Scrollbars (Nested View) (nested) Text Field Automatic x Automatic Never Name (Nested View) (nested) Component Drop-Down List Size Automatic x Automatic Scrollbars Never Configuration • Row 1 Name (Nested View) (nested) Component Button Size Automatic x Automatic Configuration • Row 2 Text Field nested view Module Component Name Preferred Width Preferred Height Context Inputs tasktutorial Text Field (Nested View) 20px 20px Key Usage D
Tutorial 6: Creating a Form Creating the Tasks and Forms 131 • Global Context Mappings Note Key Description hostName Value The hostName context key is set in the flow Context Mappings for this component.
vFoglight Web Component Tutorial • Global Context Mappings Key Description operatingSystem Selected Item Configuration • Label Operating Systems • Items List • {0} String (Windows) • {1} String (Linux) • {2} String (HPUX) • {3} String (Sun) • {4} String (AIX) Flow • Action Selection • Flow Type Update Button nested view Module Component Name Preferred Width Preferred Height Configuration • Label Add tasktutorial Button (Nested View) 200px 20px Configure Host List Host List is a row-oriented ta
Tutorial 6: Creating a Form Creating the Tasks and Forms Name Public Deprecated Preferred Width Preferred Height Refresh Interval Priority Purpose(s) Custom Purpose(s) Relevant Role(s) Allowed Role(s) Comments Context Help Context Inputs 133 Host List No No 300px 300px - second(s) None Dashboard, Page, Pagelet (From module: Advanced Operator, Operator) (none) Key Usage Data Source Type Data Type timeRange Optional Common Time Range hostName Optional Common String newAnnotation Optional Com
vFoglight Web Component Tutorial • ID wcf_column_1 (Note: this line is automatically generated. You do not type this.) • Column • Value Context Selection /annotations returning "Localized Value" • ID wcf_column_2 (Note: this line is automatically generated. You do not type this.) • Action Groups Note Click the Add Action Group button to create an Action Group node.l • Action Group • Actions Note Click the Add Action button to create an Actions node.
Tutorial 6: Creating a Form Creating the Tasks and Forms • Context Mappings Key Description hostSelected Selected Row • Flow Type Update • Context Mappings Key Value hostId Context Selection /uniqueId returning "Localized Value Configuring Add Annotation Input Module Component Name Public Deprecated Preferred Width Preferred Height tasktutorial Text Field Add Annotation Input No No 200px 20px 135
vFoglight Web Component Tutorial Refresh Interval Priority Purpose(s) Custom Purpose(s) Relevant Role(s) Allowed Role(s) Comments Context Help Context Inputs - second(s) None Page, Pagelet (From module: Advanced Operator, Operator) (none) Key Usage Data Source Type Data Type hostId Optional Common String newAnnotation Optional Common String • Global Context Mappings Key Description newAnnotation Value Configuration • Input Field Width 30 • Page Options • Actions • Action • Text updat
Tutorial 6: Creating a Form Testing the Application 137 Testing the Application If you have built the application by creating a new system module called TaskTutorial, you should see Host List under Dashboards > TaskTutorial. Figure 4 Summary This tutorial has introduced you to the simplest way of setting a submit action on a container. More complex actions are possible. The following note on the Form component provides an outline of the possibilities that are available using the new Form component.
vFoglight Web Component Tutorial The Form Component In previous releases of vFoglight, component-specific actions were disabled when a submit action was set on a container. Now, if you set a flow on a component in a form it will be triggered independently. This ability, combined with the new smart update functionality, removes any HTML-induced restrictions on how a particular page and its submissions need to be structured.
Index A about vFoglight 8 aggregateState 51 alarm adding an alarm icon 50 message 67 severity 67 All Hosts 120 C chart configuration 71 component Add a Host Form 128 Add Annotation Input 135 Button nested view 132 Chart 71 Customizer 81 Drop-Down 78 Drop-Down List nested view 131 Fixed Layout 44 Grid 53, 75 Host List 132 Iterator 111 Key-Value Listing 68 Label 73 Row-Oriented Table 40, 102 Text Field nested view 130 context additional 88, 99 host 54 hostId 127, 136 hostmodel 99 hostName 125, 129, 130, 131
vFoglight Web Component Tutorial F O flow on a label 75 on a table 55 footer add to report 110 create component 109 footers sequential 117 OS Common 56 G generate report 106 grid adding views 89 choosing views 86 using a customizer 86 groovy 123 script listings 127 H header add to report 108 adding to a report 106 headers sequential 117 Host Monitor 56 I Iterator adding to a report 111 adding to report 111 iterator 111 L Label 73 P page orientation 100 Q query alarms 61 configuring 37 for rep
Index text conventions 11 141