Search
Welcome to M-Files Empower – our new support experience. We'd love to hear what you think!Give feedback

Last updated on 24 November 2021

Admin
Search

Overview

MFIDOLConsole is a command line tool for making queries directly into the IDOL. It can give you status information about every engine as well as you can make searches directly to IDOL. That way you can rule off the influence of the M-Files. For example, if you do not find something from the M-Files full text search and you find it with MFIDOLConsole, there is probably something wrong in M-Files or between it and IDOL.

This document describes how to use MFIDOLConsole tool.
 

Solution

 

What?

  • Command line tool to invoke IDOL queries…
    • MFIDOLConsole.exe + runtime DLLs + configuration file
  • …and not just user queries, but also queries for status information about IDOL content
  • But, be cautious about the substance:
    • Query entered by a user != Query sent to IDOL
    • In M-Files, lots of language analysis and other magic happens in between

 

Where?

 

Why?

·         MFIDOLConsole makes your day because it…

o   …allows you to invoke an arbitrary query API request

o   …encrypts the request before sending it to IDOL

 

How?

  • MFIDOLConsole <option>=<value> …
    • Mandatory options:

o   cfg=<config file containing commonly reused options>

o   a=<action>

    • Most of the options in the configuration file can be overridden by command line
  • Output is raw XML
    • No proper line endings for Windows
    • One solution is to use IE/Edge with MSXML rendering for the output file
  • Examples

o   MFIDOLConsole cfg=config.txt a=getstatus > gs.xml

o   MFIDOLConsole cfg=config.txt a=rawquery text="foo AND bar" > q1.xml

o   MFIDOLConsole cfg=config.txt a=rawquery text="\"my phrase\"" > q2.xml

o   MFIDOLConsole cfg=config.txt a=getcontent reference=MF-{8D3573BB-6182-4148-8C99-FC1F19B07E1B}-0-101 > gc.xml

 

Most common actions

  • getstatus
    • Overall status information about the IDOL engine
    • Among other things, output shows databases, document counts in those databases, child engine status for DAH, etc.
  • rawquery
    • Normal query
    • Search terms must be separated by a boolean operator in uppercase
    • Search term phrases must be enclosed in escaped quotation marks
    • NOTE: Original "query" and "list" actions in IDOL must be prefixed with "raw" here
  • getcontent
    • The indexed content for a particular object (in IDX format)
  • getquerytagvalues
    • Facet values query
  • indexergetstatus
    • Inspection of the indexer queue

 

Most typical use cases

  • What is the current status of the IDOL engine(s)?
    • a=GetStatus
  • What content (metadata + filedata) has been sent to IDOL for indexing a particular object?
    • a=GetContent
    • reference=<database_name>-<objtype>-<id>
  • What objects are returned for a particular query?
    • a=RawQuery
    • text="<query terms separated by boolean operators in uppercase>"
    • fieldtext="<special FieldText query>"   (optional)

NOTE1: Field specifiers can be used to restrict the scope:  "foo:MFFILE_*" 

NOTE2: Some M-Files search criteria are carried by FieldText instead of Text

 

Configuration file - Things to change

·         IDOLServerHost=[IP or hostname of IDOL host e.g. localhost]

·         IDOLServerACIPort=[ACI port of the IDOL host, the one ending 0 e.g. 9000]

·         IndexDBName=[Name of the index database e.g. MF-{8D3573BB-6182-4148-8C99-FC1F19B07E1B}]

 

Sample queries

  • MFIDOLConsole cfg=config.txt a=getstatus > gs.xml

-       This will give you the status of the IDOL server/engine

  • MFIDOLConsole cfg=config.txt a=rawquery text="aalto AND abc" > q.xml

-       This will result the documents found in that particular search text. It also gives you the document reference that can be used in the next query.

  • MFIDOLConsole cfg=config.txt a=getcontent reference=MF-{8D3573BB-6182-4148-8C99-FC1F19B07E1B}-0-86 > gc.xml

-       This will give you the information about what has been indexed about that object.

  • MFIDOLConsole cfg=config.txt a=indexergetstatus maxresults=0 > igs.xml

-       This will show you the index queue in IDOL. Maxres is good to keep to reduce the amount of results.

  • MFIDOLConsole cfg=config.txt a=indexergetstatus Summary=true > summary.xml

-       This will show you a summary page of the index queue instead of the complete status results. A status summary includes information such as how many items are in the queue, how many have finished indexing, and how many are queued (waiting to be indexed).

Still need help?