Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

186 lines
20 KiB

  1. <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
  2. <html>
  3. <head>
  4. <title>Microsoft Index Server Guide: Basic Administration</title>
  5. <meta name="FORMATTER" content="Microsoft FrontPage 1.1">
  6. <meta name="GENERATOR" content="Microsoft FrontPage 1.1">
  7. </head>
  8. <body bgcolor="#FFFFFF">
  9. <!--Headerbegin--><p align=center><a name="TOP"><img src="onepix.gif" alt="Space" align=middle width=1 height=1></a> <a href="default.htm#Top"><img src="toc.gif" alt=" Contents" align=middle border=0 width=89 height=31></a> <a href="idq-vars.htm"><img src="previous.gif" alt="Previous" align=middle border=0 width=32 height=31></a> <a href="sechelp.htm"><img src="next.gif" alt="Next" align=middle border=0 width=32 height=31></a> </p>
  10. <hr>
  11. <!--Headerend--><p><a name="BasicAdministration"><font size=6><strong>Basic Administration</strong></font></a></p>
  12. <p><!--Chaptoc--></p>
  13. <blockquote>
  14. <p><a href="adminhlp.htm#IDAScripts">IDA Scripts</a> <br>
  15. <a href="adminhlp.htm#ListofVirtualRoots">List of Virtual Roots</a> <br>
  16. <a href="adminhlp.htm#AddVRoot">Enabling Indexing of a Virtual Root</a> <br>
  17. <a href="#SettingUpRemoteVirtualRoots">Setting Up a Remote Virtual Root</a><br>
  18. <a href="adminhlp.htm#ForceScan">Forcing a Scan of a Virtual Root</a> <br>
  19. <a href="adminhlp.htm#ForcingaMerge">Forcing a Merge</a> <br>
  20. <a href="adminhlp.htm#MonitoringPerformance">Monitoring Performance</a> <br>
  21. <a href="adminhlp.htm#UnfilteredFiles">Unfiltered Files</a> <br>
  22. <a href="adminhlp.htm#LoggingQueries">Logging Queries</a> <br>
  23. </p>
  24. </blockquote>
  25. <hr>
  26. <!--ChaptocEnd--><p>Microsoft Index Server is designed to minimize administrative requirements. By default, every virtual root is indexed, but
  27. indexing can be controlled on a per-root basis. Performance statistics can be retrieved by use of either the Performance
  28. Monitor or HTTP.</p>
  29. <hr>
  30. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="IDAScripts">IDA Scripts</a></h1>
  31. <p>Administrative requests are very similar to queries, except the parameters are stored in an .ida file instead of an .idq file. The
  32. parameters available in an .ida file are:</p>
  33. <div align=left>
  34. <table border=1 cellpadding=5 cellspacing=0 width=100%>
  35. <tr><th align=left valign=bottom><font size=2><strong>Parameter</strong></font></th><th align=left valign=bottom><font size=2><strong>Description</strong></font></th><th align=left valign=bottom><font size=2><strong>Optional</strong></font></th></tr>
  36. <tr><td valign=top width=20%><font size=3><tt>CiCatalog</tt> </font></td><td valign=top width=70%><font size=2>Specifies location of catalog. If not found, default specified in registry is used.</font></td><td valign=top width=10%><font size=2>Yes</font></td></tr>
  37. <tr><td valign=top width=20%><font size=3><tt>CiTemplate</tt></font></td><td valign=top width=70%><font size=2>Specifies template to use if administration operation is successful. Standard .idq error semantics
  38. apply.</font></td><td valign=top width=10%><font size=2>No</font></td></tr>
  39. <tr><td valign=top width=20%><font size=3><tt>CiAdminOperation</tt></font></td><td valign=top width=70%><font size=2>One of: UpdateRoots, GetState, ForceMerge, or ScanRoots. If not specified, defaults to GetState.</font></td><td valign=top width=10%><font size=2>Yes</font></td></tr>
  40. <tr><td valign=top width=20%><font size=3><tt>CiLocale</tt></font></td><td valign=top width=70%><font size=2>Defines the locale used to issue the query. Standard HTML locale encoding supported.</font></td><td valign=top width=10%><font size=2>Yes</font></td></tr>
  41. </table>
  42. </div>
  43. <p>You can also pass user-defined variables through in the same manner as .idq files.</p>
  44. <p><strong>Note</strong>&#160;&#160;&#160;Some administrative operations can change the state of the index. Administrative operations are restricted based on an
  45. <a href="glossary.htm#ACL">access control list (ACL)</a>. See the <a href="sechelp.htm#SecureAdmin">Security</a> page for more information on security.</p>
  46. <p><strong>Note</strong>&#160;&#160;&#160;Do not put .ida files on a virtual root pointing to a remote Uniform Naming Convention (UNC) share.</p>
  47. <hr>
  48. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="ListofVirtualRoots">List of Virtual Roots</a></h1>
  49. <p>To retrieve a list of virtual roots and their indexed state, you need only execute a special query. The results are returned in the
  50. same manner as a standard query results page, and can be formatted using standard .htx templates. To retrieve the list of
  51. virtual roots, set the <strong>CiScope</strong> parameter in an .idq file to be the string: VIRTUAL_ROOTS. The .idq syntax requires
  52. <strong>CiRestriction</strong> be set to a non-null value, but a restriction such as #path <strong>*</strong> can be used to retrieve all roots.</p>
  53. <p>The properties that can be retrieved from this query are all the standard file properties (path, virtual path, and so on) of the
  54. directory to which the virtual root maps, plus one special property: <strong>metavrootused</strong>. This Boolean value is set to <strong>TRUE</strong> if the
  55. root is indexed, <strong>FALSE</strong> if it is not. A sample administrative query is stored <a href="/srchadm/admin.htm">here</a>.</p>
  56. <hr>
  57. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="AddVRoot">Enabling Indexing of a Virtual Root</a></h1>
  58. <p>To turn indexing of a virtual root on or off, you need only specify <tt>CiAdminOperation=UpdateRoots</tt> in the .ida file and send
  59. one or two special variables in the HTTP GET command. The special variables are <tt>PROOT_</tt><em><tt>virtual root</tt></em> and
  60. <tt>INDEX_</tt><em><tt>virtual root</tt></em>. </p>
  61. <p>A variable with the name <tt>PROOT_</tt><em><tt>virtual root</tt></em> identifies the current mapping between virtual and physical root. The virtual
  62. root is the variable name after the string <tt>PROOT_</tt> and the corresponding physical path is the value of the variable. For example,
  63. a home directory pointing to E:\Wwwroot would be described by: <tt>PROOT_/ = e:\wwwroot</tt>.</p>
  64. <p>If the second special variable, <tt>INDEX_</tt><em><tt>virtual root</tt></em> exists, then Index Server will turn indexing <em>on</em>. If this variable does not
  65. exist, then indexing will be turned <em>off</em>. In the sample .htx file listing virtual roots, the <strong>metavrootused</strong> property primes a check
  66. box named <tt>INDEX_</tt><em><tt>virtual root</tt></em>. This is the resulting <a href="/scripts/srchadm/admin.idq?">page</a>.</p>
  67. <p>When changes are submitted, Index Server compares the new set of virtual roots with the corresponding existing entries and
  68. makes the appropriate changes in the index. For each root, possible changes are:</p>
  69. <ol>
  70. <li>Enable indexing.</li>
  71. <li>Modify the virtual or physical mapping.</li>
  72. <li>Disable indexing.</li>
  73. <li>Do nothing (if the new root state matches the existing index state).</li>
  74. </ol>
  75. <p>Changes of type (1) and (2) will cause files under the virtual root to be reindexed. Change (3) will remove files under the
  76. virtual root from the index.</p>
  77. <hr>
  78. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="SettingUpRemoteVirtualRoots">Setting Up a Remote Virtual Root</a></h1>
  79. <p>When specifying the logon ID for a remote virtual root, type both the domain name and the user name, separated by a
  80. backslash (\):</p>
  81. <p><em>domain\username</em></p>
  82. <p>If you do not give the domain name, Microsoft Index Server will not index the remote virtual roots. Note that the domain name
  83. may actually be the name of the computer, if the account is local to that computer.</p>
  84. <p>User IDs associated with remote virtual-root setup must have interactive logon permission on the computer running Microsoft
  85. Index Server. For example, if /<em>Vroot1</em> on <em>index_server</em> points to \\<em>Computername\Share\Folder1\Folder2</em> and the user ID
  86. is <em>domain\user</em>, then <em>domain\user</em> must have interactive logon privilege on <em>index_server</em>. The simplest way to achieve this is
  87. to add <em>domain\user</em> to the Guests group on <em>index_server</em>.</p>
  88. <hr>
  89. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="ForceScan">Forcing a Scan of a Virtual Root</a></h1>
  90. <p>To force a scan of a virtual root, you need only specify <tt>CiAdminOperation=ScanRoots</tt> in the .ida file and send two special
  91. variables in the HTTP GET command. The special variables are <tt>PROOT_</tt><em><tt>virtual root</tt></em> and <tt>SCAN_</tt><em><tt>virtual root</tt></em>. </p>
  92. <p>A variable with the name <tt>PROOT_</tt><em><tt>virtual root</tt></em> identifies the current mapping between virtual and physical root. The virtual
  93. root is the variable name after the string <tt>PROOT_</tt> and the corresponding physical path is the value of the variable. For example,
  94. a home directory pointing to E:\Wwwroot would be described by: <tt>PROOT_/ = e:\wwwroot</tt>.</p>
  95. <p>If the second special variable, <tt>SCAN_</tt><em><tt>virtual root</tt></em> exists and set to one of IncrementalScan<em><strong> </strong></em>or FullScan, then Index Server
  96. will do the specified scan of the virtual directory. If this variable does not exist or set to NoScan, then no scanning will be
  97. done. </p>
  98. <p>The sample Scan.htx file lists all the virtual roots that are indexed and by default sets the <tt>SCAN_</tt><em><tt>virtual root</tt></em><em><strong><tt> </tt></strong></em>to NoScan.
  99. See the <a href="scanhlp.htm">Scanning</a> page for more details on the sample ForceScan administration operation.</p>
  100. <hr>
  101. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="ForcingaMerge">Forcing a Merge</a></h1>
  102. <p>The optimal index arrangement for queries is to have just a single master index (See the <a href="indexhlp.htm">Indexing</a> page for more details on
  103. indexing). You can force the index to that state by running an .ida script with <tt>CiAdminOperation=ForceMerge</tt>.</p>
  104. <p><strong>Note</strong>&#160;&#160;&#160;Master merge is potentially a long, CPU-intensive activity. Query execution may visibly slow during master merge.
  105. Consider displaying an extra confirmation page before running the script itself.</p>
  106. <hr>
  107. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="MonitoringPerformance">Monitoring Performance</a></h1>
  108. <p>There are two ways to monitor performance of Index Server: by using Performance Monitor, or by running an .ida script. The
  109. information available is nearly identical, but the method of retrieval differs. Both solutions can be used locally or from a remote
  110. client. Performance Monitor has the advantage of automatic refresh, plus graphing and logging capabilities. The .ida script
  111. method offers more flexible .htx formatting of the output and the ability to be viewed from a client running an operating system
  112. other than Windows.</p>
  113. <p>No setup is required to use the Windows NT Performance Monitor. For the IDA method, you must create an .ida file with
  114. <tt>CiAdminOperation=GetState</tt>. A <a href="/scripts/srchadm/state.ida?">sample page</a> has been provided. The table below lists the .htx variables available for
  115. statistics. Variables starting with <strong>CiAdminIndex</strong> are in the <strong>Content Index</strong> performance object. Variables starting with
  116. <strong>CiAdminCache</strong> are in the <strong>Http Content Index</strong> object.</p>
  117. <table border=1 cellpadding=5 cellspacing=0 width=100%>
  118. <tr><th align=left valign=bottom width=30%><font size=2><strong>.htx Variable</strong></font></th><th align=left valign=bottom width=15%><font size=2><strong>Performance
  119. Monitor field</strong></font></th><th align=left valign=bottom width=55%><font size=2><strong>Description</strong></font></th></tr>
  120. <tr><td valign=top width=30%><font size=3><code>CiAdminCacheActive</code></font></td><td width=15%><font size=2>Active queries</font></td><td width=55%><font size=2>Number of queries being executed.</font></td></tr>
  121. <tr><td valign=top width=30%><font size=3><code>CiAdminCacheCount</code></font></td><td width=15%><font size=2>Cache items</font></td><td width=55%><font size=2>Number of cached queries.</font></td></tr>
  122. <tr><td valign=top width=30%><font size=3><code>CiAdminCacheHits</code></font></td><td valign=top width=15%><font size=2>% Cache hits</font></td><td valign=top width=55%><font size=2>Percentage of HTTP requests that use an existing cached query.</font></td></tr>
  123. <tr><td valign=top width=30%><font size=3><code>CiAdminCacheMisses</code></font></td><td width=15%><font size=2>% Cache misses</font></td><td width=55%><font size=2>Percentage of HTTP requests that execute a new query.</font></td></tr>
  124. <tr><td valign=top width=30%><font size=3><code>CiAdminCachePending</code></font></td><td width=15%><font size=2>Current requests
  125. queued</font></td><td width=55%><font size=2>Number of pending queries waiting for execution.</font></td></tr>
  126. <tr><td valign=top width=30%><font size=3><code>CiAdminCacheRejected</code></font></td><td width=15%><font size=2>Total requests
  127. rejected</font></td><td width=55%><font size=2>Number of queries rejected because the query engine was too busy.</font></td></tr>
  128. <tr><td valign=top width=30%><font size=3><code>CiAdminCacheTotal</code></font></td><td width=15%><font size=2>Total queries</font></td><td width=55%><font size=2>Number of queries executed since the Web server was started.</font></td></tr>
  129. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexCountDeltas</code></font></td><td valign=top width=15%><font size=2>(not applicable)</font></td><td valign=top width=55%><font size=2>Number of documents that have been indexed or deleted since the last </font><a href="indexhlp.htm#MasterMerge"><font size=2>master
  130. merge</font></a><font size=2>.</font></td></tr>
  131. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexCountFiltered</code></font></td><td valign=top width=15%><font size=2># Documents
  132. filtered</font></td><td valign=top width=55%><font size=2>Number of documents filtered since Index Server was started.</font></td></tr>
  133. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexCountPersIndex</code></font></td><td valign=top width=15%><font size=2>Persistent indexes</font></td><td valign=top width=55%><font size=2>Count of </font><a href="indexhlp.htm#PersistentIndex"><font size=2>shadow indexes and master indexes</font></a><font size=2> in catalog.</font></td></tr>
  134. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexCountQueries</code></font></td><td valign=top width=15%><font size=2>Running queries</font></td><td valign=top width=55%><font size=2>Count of queries with open </font><a href="glossary.htm#Cursor"><font size=2>cursors</font></a><font size=2> against the catalog. Will differ from the
  135. number of active queries in the cache because some cached queries may be
  136. enumerated (nonindexed), and some quiescent cached queries may still hold
  137. cursors open. </font></td></tr>
  138. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexCountToFilter</code></font></td><td valign=top width=15%><font size=2>Files to be filtered</font></td><td valign=top width=55%><font size=2>Number of documents that have been added or modified since the last time
  139. they were filtered.</font></td></tr>
  140. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexCountTotal</code></font></td><td valign=top width=15%><font size=2>Total # documents</font></td><td valign=top width=55%><font size=2>Number of documents in the catalog.</font></td></tr>
  141. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexCountUnique</code></font></td><td valign=top width=15%><font size=2>Unique Keys</font></td><td valign=top width=55%><font size=2>Number of unique words in the catalog. Updated only after a </font><a href="indexhlp.htm#MasterMerge"><font size=2>master merge</font></a><font size=2>.</font></td></tr>
  142. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexCountWordlists</code></font></td><td valign=top width=15%><font size=2>Word list</font></td><td valign=top width=55%><font size=2>Count of </font><a href="indexhlp.htm#WordLists"><font size=2>word lists</font></a><font size=2> in catalog.</font></td></tr>
  143. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexMergeProgress</code></font></td><td valign=top width=15%><font size=2>Merge progress</font></td><td valign=top width=55%><font size=2>Percent of current </font><a href="indexhlp.htm#Merging"><font size=2>merge</font></a><font size=2> completed. Will be 100% when no merge is in
  144. progress.</font></td></tr>
  145. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexSize</code></font></td><td valign=top width=15%><font size=2>Index size (in
  146. megabytes)</font></td><td valign=top width=55%><font size=2>Size in megabytes of index. Includes both in-memory </font><a href="indexhlp.htm#WordLists"><font size=2>word lists</font></a><font size=2> and on-disk
  147. </font><a href="indexhlp.htm#PersistentIndex"><font size=2>shadow indexes and master indexes</font></a><font size=2>. Does not include property cache.</font></td></tr>
  148. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexStateAnnealingMerge</code></font></td><td valign=top width=15%><font size=2>n/a</font></td><td valign=top width=55%><font size=2>True if an </font><a href="indexhlp.htm#AnnealingMerge"><font size=2>annealing merge</font></a><font size=2> is in progress.</font></td></tr>
  149. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexStateMasterMerge</code></font></td><td valign=top width=15%><font size=2>n/a</font></td><td valign=top width=55%><font size=2>True if a </font><a href="indexhlp.htm#MasterMerge"><font size=2>master merge</font></a><font size=2> is in progress.</font></td></tr>
  150. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexStateScanRequired</code></font></td><td valign=top width=15%><font size=2>n/a</font></td><td valign=top width=55%><font size=2>True if the catalog needs to be </font><a href="errhandl.htm"><font size=2>rebuilt</font></a><font size=2>, which happens automatically when
  151. appropriate.</font></td></tr>
  152. <tr><td valign=top width=30%><font size=3><code>CiAdminIndexStateShadowMerge</code></font></td><td valign=top width=15%><font size=2>n/a</font></td><td valign=top width=55%><font size=2>True if a </font><a href="indexhlp.htm#ShadowMerge"><font size=2>shadow merge</font></a><font size=2> is in progress.</font></td></tr>
  153. </table>
  154. <hr>
  155. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="UnfilteredFiles">Unfiltered Files</a></h1>
  156. <p>Files that are corrupted or files that could not be filtered because of problems in a <a href="filtrhlp.htm#FilterDLLs">filter DLL</a> are called <em>unfiltered</em> files and can
  157. be viewed by issuing the <a href="/scripts/srchadm/unfilt.idq?">administrative command</a> for unfiltered files. This command issues the query: <tt>@Unfiltered=true</tt>.
  158. The <a href="idqhelp.htm#namesection">names section</a> of the .idq file must contain:</p>
  159. <blockquote>
  160. <pre>[Names]
  161. Unfiltered (DBTYPE_BOOL) = 49691c90-7e17-101a-a91c-08002b2ecda9 7</pre>
  162. </blockquote>
  163. <p>This property is not in the list of built-in properties, to prevent users from making this request. Unlike the other queries
  164. described here, the unfiltered-files query is not restricted to administrators. It can be controlled by placing an ACL on the .idq
  165. file that defines the unfiltered property.</p>
  166. <p><strong>Note&#160;&#160;&#160;</strong>The unfiltered property connot be used in conjunction with other properties. A query such as <tt>@Unfiltered=true &amp;
  167. @write &gt;= -1d</tt> will return no results.</p>
  168. <hr>
  169. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="LoggingQueries">Logging Queries</a></h1>
  170. <p>Queries are logged through the standard Internet Information Server logging mechanism.</p>
  171. <!--Footerbegin--><hr>
  172. <p align=center><a href="default.htm#Top"><img src="toc.gif" alt=" Contents" align=middle border=0 width=89 height=31></a> <a href="idq-vars.htm"><img src="previous.gif" alt="Previous" align=middle border=0 width=32 height=31></a> <a href="#TOP"><img src="up_end.gif" alt="To Top" align=middle border=0 width=32 height=31></a> <a href="sechelp.htm"><img src="next.gif" alt="Next" align=middle border=0 width=32 height=31></a></p>
  173. <hr>
  174. <p align=center><em>&#169; 1996 by Microsoft Corporation. All rights reserved.<!--Footerend--></em></p>
  175. </body>
  176. </html>