3 LogQueryLanguageHelp =
\r
5 "Log Query Language Quick Reference",
\r
6 "----------------------------------",
\r
8 "A query is constitued of a series of predicates combined by 'or' and 'and' logical operator.",
\r
9 "Each predicate is applied on each log, then the result combined to obtain a list of 'selected' log.",
\r
11 "General query format :",
\r
13 " (options) predicate (logicalCombiner predicate)*",
\r
18 " Available option :",
\r
19 " - 'full_context' : extract all the log that are in the context of a ",
\r
21 " - 'output_prefix='<prefix> : set a prefix for the result file of the query",
\r
23 "logicalCombiner format :",
\r
24 " Supported logical combiner are 'or' and 'and'.",
\r
25 " The 'and' combiner have the hightest priority over 'or'.",
\r
26 " You can also manually force the priority of combiner by",
\r
27 " grouping predicate with parenthesis.",
\r
28 " e.g : '(' predicate1 'or' predicate2 ')' 'and' predicate3'",
\r
29 " In this case, the 'or' between predicate1 and predicate2 is avaluated ",
\r
30 " before the 'and' with predicated3",
\r
32 "Predicate format :",
\r
33 " <paramName | paramType> <operator> <constant>",
\r
35 "ParamName format :",
\r
36 " Any parameter name that exist in a log. Any log that use this param name will",
\r
37 " be tested againts the predicate.",
\r
41 "ParamType format:",
\r
42 " You can test a predicate against any parameter of a given type, whatever it's name.",
\r
43 " '{' typeName '}'",
\r
44 " The available type names are :",
\r
45 " uint32, uint64, sint32, float, string, entityId, itemId, sheetId.",
\r
46 " Clearly, the entityId, itemId and sheetId are the most interesting.",
\r
48 "Operator format :",
\r
49 " All classicle operators are available:",
\r
50 " '<', '<=', '>', '>=', '=' (or '=='), '!=' and 'like'.",
\r
51 " The 'like' operator try to find the constant as a substring of the parameter.",
\r
53 "Constant format :",
\r
54 " Right part of a predicate are always constant.",
\r
55 " You can write constant of different type :",
\r
56 " uint32 : any decimal or hexacimal (prefixed with '0x')",
\r
57 " sint32 : any decimal prefixed with the minus sign '-'",
\r
58 " string : any list of characters surrounded by double quote",
\r
59 " entityId : an entity id as formated by NeL '(0x1234:12:34:56)'",
\r
60 " sheeId : any characters that can be considered as a sheet name (e.g 'foo.sitem')",
\r
61 " itemId : an item id as printed by the ryzom tool : '[123:0x123456:1234]'",
\r
64 "Special param name :",
\r
65 " There are threee hardcoded parameter name :",
\r
66 " 'LogName', 'LogDate' and 'ShardId'.",
\r
68 " 'LogName' is used to build query based on the name of the log instead of",
\r
69 " on the value of the parameters. e.g : 'LogName = '''Item_Create''' will select",
\r
70 " all logs of item creation.",
\r
72 " 'LogDate' is used to restrict the scope of the query on a limited time frame.",
\r
73 " LogDate accept date of the following format :",
\r
74 " - literal date : YYYY-MM-DD",
\r
75 " - literal date and time: YYYY-MM-DD HH:MM",
\r
76 " - literal date and time: YYYY-MM-DD HH:MM:SS",
\r
77 " - yesterday : 'yesterday'",
\r
78 " - some time ago : <count> secs|mins|hours|days|weeks|months|years",
\r
80 " e.g : 'LogDate > yesterday' -> any log from yesterday to now",
\r
81 " 'LogDate > 2 days' -> any log from 2 days ago to now",
\r
82 " 'LogDate < 3 weeks' -> any log older than 3 weeks",
\r
84 " 'ShardId' is used to select log from a specific shard. You must",
\r
85 " give a numeric shard id as predicate parameter. ",
\r