ml-shared.asciidoc 65 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640
  1. tag::aggregations[]
  2. If set, the {dfeed} performs aggregation searches. Support for aggregations is
  3. limited and should be used only with low cardinality data. For more information,
  4. see
  5. {ml-docs}/ml-configuring-aggregation.html[Aggregating data for faster performance].
  6. end::aggregations[]
  7. tag::allow-lazy-open[]
  8. Advanced configuration option. Specifies whether this job can open when there is
  9. insufficient {ml} node capacity for it to be immediately assigned to a node. The
  10. default value is `false`; if a {ml} node with capacity to run the job cannot
  11. immediately be found, the <<ml-open-job,open {anomaly-jobs} API>> returns an
  12. error. However, this is also subject to the cluster-wide
  13. `xpack.ml.max_lazy_ml_nodes` setting; see <<advanced-ml-settings>>. If this
  14. option is set to `true`, the <<ml-open-job,open {anomaly-jobs} API>> does not
  15. return an error and the job waits in the `opening` state until sufficient {ml}
  16. node capacity is available.
  17. end::allow-lazy-open[]
  18. tag::allow-no-datafeeds[]
  19. Specifies what to do when the request:
  20. +
  21. --
  22. * Contains wildcard expressions and there are no {dfeeds} that match.
  23. * Contains the `_all` string or no identifiers and there are no matches.
  24. * Contains wildcard expressions and there are only partial matches.
  25. The default value is `true`, which returns an empty `datafeeds` array when
  26. there are no matches and the subset of results when there are partial matches.
  27. If this parameter is `false`, the request returns a `404` status code when there
  28. are no matches or only partial matches.
  29. --
  30. end::allow-no-datafeeds[]
  31. tag::allow-no-jobs[]
  32. Specifies what to do when the request:
  33. +
  34. --
  35. * Contains wildcard expressions and there are no jobs that match.
  36. * Contains the `_all` string or no identifiers and there are no matches.
  37. * Contains wildcard expressions and there are only partial matches.
  38. The default value is `true`, which returns an empty `jobs` array
  39. when there are no matches and the subset of results when there are partial
  40. matches. If this parameter is `false`, the request returns a `404` status code
  41. when there are no matches or only partial matches.
  42. --
  43. end::allow-no-jobs[]
  44. tag::allow-no-match[]
  45. Specifies what to do when the request:
  46. +
  47. --
  48. * Contains wildcard expressions and there are no {dfanalytics-jobs} that match.
  49. * Contains the `_all` string or no identifiers and there are no matches.
  50. * Contains wildcard expressions and there are only partial matches.
  51. The default value is `true`, which returns an empty `data_frame_analytics` array
  52. when there are no matches and the subset of results when there are partial
  53. matches. If this parameter is `false`, the request returns a `404` status code
  54. when there are no matches or only partial matches.
  55. --
  56. end::allow-no-match[]
  57. tag::allow-no-match-models[]
  58. Specifies what to do when the request:
  59. +
  60. --
  61. * Contains wildcard expressions and there are no models that match.
  62. * Contains the `_all` string or no identifiers and there are no matches.
  63. * Contains wildcard expressions and there are only partial matches.
  64. The default value is `true`, which returns an empty array when there are no
  65. matches and the subset of results when there are partial matches. If this
  66. parameter is `false`, the request returns a `404` status code when there are no
  67. matches or only partial matches.
  68. --
  69. end::allow-no-match-models[]
  70. tag::analysis[]
  71. Defines the type of {dfanalytics} you want to perform on your source index. For
  72. example: `outlier_detection`. See <<ml-dfa-analysis-objects>>.
  73. end::analysis[]
  74. tag::analysis-config[]
  75. The analysis configuration, which specifies how to analyze the data. After you
  76. create a job, you cannot change the analysis configuration; all the properties
  77. are informational.
  78. end::analysis-config[]
  79. tag::analysis-limits[]
  80. Limits can be applied for the resources required to hold the mathematical models
  81. in memory. These limits are approximate and can be set per job. They do not
  82. control the memory used by other processes, for example the {es} Java processes.
  83. end::analysis-limits[]
  84. tag::assignment-explanation-anomaly-jobs[]
  85. For open {anomaly-jobs} only, contains messages relating to the selection
  86. of a node to run the job.
  87. end::assignment-explanation-anomaly-jobs[]
  88. tag::assignment-explanation-datafeeds[]
  89. For started {dfeeds} only, contains messages relating to the selection of a
  90. node.
  91. end::assignment-explanation-datafeeds[]
  92. tag::assignment-explanation-dfanalytics[]
  93. Contains messages relating to the selection of a node.
  94. end::assignment-explanation-dfanalytics[]
  95. tag::assignment-memory-basis[]
  96. Where should the memory requirement used for deciding which node the job
  97. will run on come from? The possible values are:
  98. +
  99. --
  100. * `model_memory_limit`: The job's memory requirement will be calculated on
  101. the basis that its model memory will grow to the `model_memory_limit`
  102. specified in the `analysis_limits` of its config.
  103. * `current_model_bytes`: The job's memory requirement will be calculated on
  104. the basis that its current model memory size is a good reflection of what
  105. it will be in the future.
  106. * `peak_model_bytes`: The job's memory requirement will be calculated on
  107. the basis that its peak model memory size is a good reflection of what
  108. the model size will be in the future.
  109. --
  110. end::assignment-memory-basis[]
  111. tag::background-persist-interval[]
  112. Advanced configuration option. The time between each periodic persistence of the
  113. model. The default value is a randomized value between 3 to 4 hours, which
  114. avoids all jobs persisting at exactly the same time. The smallest allowed value
  115. is 1 hour.
  116. +
  117. --
  118. TIP: For very large models (several GB), persistence could take 10-20 minutes,
  119. so do not set the `background_persist_interval` value too low.
  120. --
  121. end::background-persist-interval[]
  122. tag::bucket-allocation-failures-count[]
  123. The number of buckets for which new entities in incoming data were not processed
  124. due to insufficient model memory. This situation is also signified by a
  125. `hard_limit: memory_status` property value.
  126. end::bucket-allocation-failures-count[]
  127. tag::bucket-count[]
  128. The number of buckets processed.
  129. end::bucket-count[]
  130. tag::bucket-count-anomaly-jobs[]
  131. The number of bucket results produced by the job.
  132. end::bucket-count-anomaly-jobs[]
  133. tag::bucket-span[]
  134. The size of the interval that the analysis is aggregated into, typically between
  135. `5m` and `1h`. The default value is `5m`. If the {anomaly-job} uses a {dfeed}
  136. with {ml-docs}/ml-configuring-aggregation.html[aggregations], this value must be
  137. divisible by the interval of the date histogram aggregation. For more
  138. information, see {ml-docs}/ml-buckets.html[Buckets].
  139. end::bucket-span[]
  140. tag::bucket-span-results[]
  141. The length of the bucket in seconds. This value matches the `bucket_span`
  142. that is specified in the job.
  143. end::bucket-span-results[]
  144. tag::bucket-time-exponential-average[]
  145. Exponential moving average of all bucket processing times, in milliseconds.
  146. end::bucket-time-exponential-average[]
  147. tag::bucket-time-exponential-average-hour[]
  148. Exponentially-weighted moving average of bucket processing times
  149. calculated in a 1 hour time window, in milliseconds.
  150. end::bucket-time-exponential-average-hour[]
  151. tag::bucket-time-maximum[]
  152. Maximum among all bucket processing times, in milliseconds.
  153. end::bucket-time-maximum[]
  154. tag::bucket-time-minimum[]
  155. Minimum among all bucket processing times, in milliseconds.
  156. end::bucket-time-minimum[]
  157. tag::bucket-time-total[]
  158. Sum of all bucket processing times, in milliseconds.
  159. end::bucket-time-total[]
  160. tag::by-field-name[]
  161. The field used to split the data. In particular, this property is used for
  162. analyzing the splits with respect to their own history. It is used for finding
  163. unusual values in the context of the split.
  164. end::by-field-name[]
  165. tag::calendar-id[]
  166. A string that uniquely identifies a calendar.
  167. end::calendar-id[]
  168. tag::categorization-analyzer[]
  169. If `categorization_field_name` is specified, you can also define the analyzer
  170. that is used to interpret the categorization field. This property cannot be used
  171. at the same time as `categorization_filters`. The categorization analyzer
  172. specifies how the `categorization_field` is interpreted by the categorization
  173. process. The syntax is very similar to that used to define the `analyzer` in the
  174. <<indices-analyze,Analyze endpoint>>. For more information, see
  175. {ml-docs}/ml-configuring-categories.html[Categorizing log messages].
  176. +
  177. The `categorization_analyzer` field can be specified either as a string or as an
  178. object. If it is a string it must refer to a
  179. <<analysis-analyzers,built-in analyzer>> or one added by another plugin. If it
  180. is an object it has the following properties:
  181. +
  182. .Properties of `categorization_analyzer`
  183. [%collapsible%open]
  184. =====
  185. `char_filter`::::
  186. (array of strings or objects)
  187. include::{es-repo-dir}/ml/ml-shared.asciidoc[tag=char-filter]
  188. `tokenizer`::::
  189. (string or object)
  190. include::{es-repo-dir}/ml/ml-shared.asciidoc[tag=tokenizer]
  191. `filter`::::
  192. (array of strings or objects)
  193. include::{es-repo-dir}/ml/ml-shared.asciidoc[tag=filter]
  194. =====
  195. end::categorization-analyzer[]
  196. tag::categorization-examples-limit[]
  197. The maximum number of examples stored per category in memory and in the results
  198. data store. The default value is 4. If you increase this value, more examples
  199. are available, however it requires that you have more storage available. If you
  200. set this value to `0`, no examples are stored.
  201. +
  202. NOTE: The `categorization_examples_limit` only applies to analysis that uses
  203. categorization. For more information, see
  204. {ml-docs}/ml-configuring-categories.html[Categorizing log messages].
  205. end::categorization-examples-limit[]
  206. tag::categorization-field-name[]
  207. If this property is specified, the values of the specified field will be
  208. categorized. The resulting categories must be used in a detector by setting
  209. `by_field_name`, `over_field_name`, or `partition_field_name` to the keyword
  210. `mlcategory`. For more information, see
  211. {ml-docs}/ml-configuring-categories.html[Categorizing log messages].
  212. end::categorization-field-name[]
  213. tag::categorization-filters[]
  214. If `categorization_field_name` is specified, you can also define optional
  215. filters. This property expects an array of regular expressions. The expressions
  216. are used to filter out matching sequences from the categorization field values.
  217. You can use this functionality to fine tune the categorization by excluding
  218. sequences from consideration when categories are defined. For example, you can
  219. exclude SQL statements that appear in your log files. For more information, see
  220. {ml-docs}/ml-configuring-categories.html[Categorizing log messages]. This
  221. property cannot be used at the same time as `categorization_analyzer`. If you
  222. only want to define simple regular expression filters that are applied prior to
  223. tokenization, setting this property is the easiest method. If you also want to
  224. customize the tokenizer or post-tokenization filtering, use the
  225. `categorization_analyzer` property instead and include the filters as
  226. `pattern_replace` character filters. The effect is exactly the same.
  227. end::categorization-filters[]
  228. tag::categorization-status[]
  229. The status of categorization for the job. Contains one of the following values:
  230. +
  231. --
  232. * `ok`: Categorization is performing acceptably well (or not being used at all).
  233. * `warn`: Categorization is detecting a distribution of categories that suggests
  234. the input data is inappropriate for categorization. Problems could be that there
  235. is only one category, more than 90% of categories are rare, the number of
  236. categories is greater than 50% of the number of categorized documents, there are
  237. no frequently matched categories, or more than 50% of categories are dead.
  238. --
  239. end::categorization-status[]
  240. tag::categorized-doc-count[]
  241. The number of documents that have had a field categorized.
  242. end::categorized-doc-count[]
  243. tag::char-filter[]
  244. One or more <<analysis-charfilters,character filters>>. In addition to the
  245. built-in character filters, other plugins can provide more character filters.
  246. This property is optional. If it is not specified, no character filters are
  247. applied prior to categorization. If you are customizing some other aspect of the
  248. analyzer and you need to achieve the equivalent of `categorization_filters`
  249. (which are not permitted when some other aspect of the analyzer is customized),
  250. add them here as
  251. <<analysis-pattern-replace-charfilter,pattern replace character filters>>.
  252. end::char-filter[]
  253. tag::chunking-config[]
  254. {dfeeds-cap} might be required to search over long time periods, for several
  255. months or years. This search is split into time chunks in order to ensure the
  256. load on {es} is managed. Chunking configuration controls how the size of these
  257. time chunks are calculated and is an advanced configuration option.
  258. +
  259. .Properties of `chunking_config`
  260. [%collapsible%open]
  261. ====
  262. `mode`:::
  263. (string)
  264. include::{es-repo-dir}/ml/ml-shared.asciidoc[tag=mode]
  265. `time_span`:::
  266. (<<time-units,time units>>)
  267. include::{es-repo-dir}/ml/ml-shared.asciidoc[tag=time-span]
  268. ====
  269. end::chunking-config[]
  270. tag::class-assignment-objective[]
  271. Defines the objective to optimize when assigning class labels:
  272. `maximize_accuracy` or `maximize_minimum_recall`. When maximizing accuracy,
  273. class labels are chosen to maximize the number of correct predictions. When
  274. maximizing minimum recall, labels are chosen to maximize the minimum recall for
  275. any class. Defaults to `maximize_minimum_recall`.
  276. end::class-assignment-objective[]
  277. tag::compute-feature-influence[]
  278. Specifies whether the feature influence calculation is enabled. Defaults to
  279. `true`.
  280. end::compute-feature-influence[]
  281. tag::custom-preprocessor[]
  282. (Optional, Boolean)
  283. Boolean value indicating if the analytics job created the preprocessor
  284. or if a user provided it. This adjusts the feature importance calculation.
  285. When `true`, the feature importance calculation returns importance for the
  286. processed feature. When `false`, the total importance of the original field
  287. is returned. Default is `false`.
  288. end::custom-preprocessor[]
  289. tag::custom-rules[]
  290. An array of custom rule objects, which enable you to customize the way detectors
  291. operate. For example, a rule may dictate to the detector conditions under which
  292. results should be skipped. {kib} refers to custom rules as _job rules_. For more
  293. examples, see
  294. {ml-docs}/ml-configuring-detector-custom-rules.html[Customizing detectors with custom rules].
  295. end::custom-rules[]
  296. tag::custom-rules-actions[]
  297. The set of actions to be triggered when the rule applies. If
  298. more than one action is specified the effects of all actions are combined. The
  299. available actions include:
  300. * `skip_result`: The result will not be created. This is the default value.
  301. Unless you also specify `skip_model_update`, the model will be updated as usual
  302. with the corresponding series value.
  303. * `skip_model_update`: The value for that series will not be used to update the
  304. model. Unless you also specify `skip_result`, the results will be created as
  305. usual. This action is suitable when certain values are expected to be
  306. consistently anomalous and they affect the model in a way that negatively
  307. impacts the rest of the results.
  308. end::custom-rules-actions[]
  309. tag::custom-rules-scope[]
  310. An optional scope of series where the rule applies. A rule must either
  311. have a non-empty scope or at least one condition. By default, the scope includes
  312. all series. Scoping is allowed for any of the fields that are also specified in
  313. `by_field_name`, `over_field_name`, or `partition_field_name`. To add a scope
  314. for a field, add the field name as a key in the scope object and set its value
  315. to an object with the following properties:
  316. end::custom-rules-scope[]
  317. tag::custom-rules-scope-filter-id[]
  318. The id of the filter to be used.
  319. end::custom-rules-scope-filter-id[]
  320. tag::custom-rules-scope-filter-type[]
  321. Either `include` (the rule applies for values in the filter) or `exclude` (the
  322. rule applies for values not in the filter). Defaults to `include`.
  323. end::custom-rules-scope-filter-type[]
  324. tag::custom-rules-conditions[]
  325. An optional array of numeric conditions when the rule applies. A rule must
  326. either have a non-empty scope or at least one condition. Multiple conditions are
  327. combined together with a logical `AND`. A condition has the following
  328. properties:
  329. end::custom-rules-conditions[]
  330. tag::custom-rules-conditions-applies-to[]
  331. Specifies the result property to which the condition applies. The available
  332. options are `actual`, `typical`, `diff_from_typical`, `time`. If your detector
  333. uses `lat_long`, `metric`, `rare`, or `freq_rare` functions, you can only
  334. specify conditions that apply to `time`.
  335. end::custom-rules-conditions-applies-to[]
  336. tag::custom-rules-conditions-operator[]
  337. Specifies the condition operator. The available options are `gt` (greater than),
  338. `gte` (greater than or equals), `lt` (less than) and `lte` (less than or
  339. equals).
  340. end::custom-rules-conditions-operator[]
  341. tag::custom-rules-conditions-value[]
  342. The value that is compared against the `applies_to` field using the `operator`.
  343. end::custom-rules-conditions-value[]
  344. tag::custom-settings[]
  345. Advanced configuration option. Contains custom meta data about the job. For
  346. example, it can contain custom URL information as shown in
  347. {ml-docs}/ml-configuring-url.html[Adding custom URLs to {ml} results].
  348. end::custom-settings[]
  349. tag::daily-model-snapshot-retention-after-days[]
  350. Advanced configuration option, which affects the automatic removal of old model
  351. snapshots for this job. It specifies a period of time (in days) after which only
  352. the first snapshot per day is retained. This period is relative to the timestamp
  353. of the most recent snapshot for this job. Valid values range from `0` to
  354. `model_snapshot_retention_days`. For new jobs, the default value is `1`. For
  355. jobs created before version 7.8.0, the default value matches
  356. `model_snapshot_retention_days`. For more information, refer to
  357. {ml-docs}/ml-model-snapshots.html[Model snapshots].
  358. end::daily-model-snapshot-retention-after-days[]
  359. tag::data-description[]
  360. The data description defines the format of the input data when you send data to
  361. the job by using the <<ml-post-data,post data>> API. Note that when configure
  362. a {dfeed}, these properties are automatically set. When data is received via
  363. the <<ml-post-data,post data>> API, it is not stored in {es}. Only the results
  364. for {anomaly-detect} are retained.
  365. +
  366. .Properties of `data_description`
  367. [%collapsible%open]
  368. ====
  369. `format`:::
  370. (string) Only `JSON` format is supported at this time.
  371. `time_field`:::
  372. (string) The name of the field that contains the timestamp.
  373. The default value is `time`.
  374. `time_format`:::
  375. (string)
  376. include::{es-repo-dir}/ml/ml-shared.asciidoc[tag=time-format]
  377. ====
  378. end::data-description[]
  379. tag::datafeed-id[]
  380. A numerical character string that uniquely identifies the
  381. {dfeed}. This identifier can contain lowercase alphanumeric characters (a-z
  382. and 0-9), hyphens, and underscores. It must start and end with alphanumeric
  383. characters.
  384. end::datafeed-id[]
  385. tag::datafeed-id-wildcard[]
  386. Identifier for the {dfeed}. It can be a {dfeed} identifier or a wildcard
  387. expression.
  388. end::datafeed-id-wildcard[]
  389. tag::dead-category-count[]
  390. The number of categories created by categorization that will never be assigned
  391. again because another category's definition makes it a superset of the dead
  392. category. (Dead categories are a side effect of the way categorization has no
  393. prior training.)
  394. end::dead-category-count[]
  395. tag::delayed-data-check-config[]
  396. Specifies whether the {dfeed} checks for missing data and the size of the
  397. window. For example: `{"enabled": true, "check_window": "1h"}`.
  398. +
  399. The {dfeed} can optionally search over indices that have already been read in
  400. an effort to determine whether any data has subsequently been added to the
  401. index. If missing data is found, it is a good indication that the `query_delay`
  402. option is set too low and the data is being indexed after the {dfeed} has passed
  403. that moment in time. See
  404. {ml-docs}/ml-delayed-data-detection.html[Working with delayed data].
  405. +
  406. This check runs only on real-time {dfeeds}.
  407. +
  408. .Properties of `delayed_data_check_config`
  409. [%collapsible%open]
  410. ====
  411. `check_window`::
  412. (<<time-units,time units>>) The window of time that is searched for late data.
  413. This window of time ends with the latest finalized bucket. It defaults to
  414. `null`, which causes an appropriate `check_window` to be calculated when the
  415. real-time {dfeed} runs. In particular, the default `check_window` span
  416. calculation is based on the maximum of `2h` or `8 * bucket_span`.
  417. `enabled`::
  418. (Boolean) Specifies whether the {dfeed} periodically checks for delayed data.
  419. Defaults to `true`.
  420. ====
  421. end::delayed-data-check-config[]
  422. tag::dependent-variable[]
  423. Defines which field of the document is to be predicted.
  424. This parameter is supplied by field name and must match one of the fields in
  425. the index being used to train. If this field is missing from a document, then
  426. that document will not be used for training, but a prediction with the trained
  427. model will be generated for it. It is also known as continuous target variable.
  428. end::dependent-variable[]
  429. tag::desc-results[]
  430. If true, the results are sorted in descending order.
  431. end::desc-results[]
  432. tag::description-dfa[]
  433. A description of the job.
  434. end::description-dfa[]
  435. tag::dest[]
  436. The destination configuration, consisting of `index` and optionally
  437. `results_field` (`ml` by default).
  438. +
  439. .Properties of `dest`
  440. [%collapsible%open]
  441. ====
  442. `index`:::
  443. (Required, string) Defines the _destination index_ to store the results of the
  444. {dfanalytics-job}.
  445. `results_field`:::
  446. (Optional, string) Defines the name of the field in which to store the results
  447. of the analysis. Defaults to `ml`.
  448. ====
  449. end::dest[]
  450. tag::detector-description[]
  451. A description of the detector. For example, `Low event rate`.
  452. end::detector-description[]
  453. tag::detector-field-name[]
  454. The field that the detector uses in the function. If you use an event rate
  455. function such as `count` or `rare`, do not specify this field.
  456. +
  457. --
  458. NOTE: The `field_name` cannot contain double quotes or backslashes.
  459. --
  460. end::detector-field-name[]
  461. tag::detector-index[]
  462. A unique identifier for the detector. This identifier is based on the order of
  463. the detectors in the `analysis_config`, starting at zero.
  464. end::detector-index[]
  465. tag::dfas-alpha[]
  466. Advanced configuration option. {ml-cap} uses loss guided tree growing, which
  467. means that the decision trees grow where the regularized loss decreases most
  468. quickly. This parameter affects loss calculations by acting as a multiplier of
  469. the tree depth. Higher alpha values result in shallower trees and faster
  470. training times. By default, this value is calculated during hyperparameter
  471. optimization. It must be greater than or equal to zero.
  472. end::dfas-alpha[]
  473. tag::dfas-downsample-factor[]
  474. Advanced configuration option. Controls the fraction of data that is used to
  475. compute the derivatives of the loss function for tree training. A small value
  476. results in the use of a small fraction of the data. If this value is set to be
  477. less than 1, accuracy typically improves. However, too small a value may result
  478. in poor convergence for the ensemble and so require more trees. For more
  479. information about shrinkage, refer to
  480. {wikipedia}/Gradient_boosting#Stochastic_gradient_boosting[this wiki article].
  481. By default, this value is calculated during hyperparameter optimization. It
  482. must be greater than zero and less than or equal to 1.
  483. end::dfas-downsample-factor[]
  484. tag::dfas-early-stopping-enabled[]
  485. Advanced configuration option.
  486. Specifies whether the training process should finish if it is not finding any
  487. better performing models. If disabled, the training process can take significantly
  488. longer and the chance of finding a better performing model is unremarkable.
  489. By default, early stoppping is enabled.
  490. end::dfas-early-stopping-enabled[]
  491. tag::dfas-eta-growth[]
  492. Advanced configuration option. Specifies the rate at which `eta` increases for
  493. each new tree that is added to the forest. For example, a rate of 1.05
  494. increases `eta` by 5% for each extra tree. By default, this value is calculated
  495. during hyperparameter optimization. It must be between 0.5 and 2.
  496. end::dfas-eta-growth[]
  497. tag::dfas-feature-bag-fraction[]
  498. The fraction of features that is used when selecting a random bag for each
  499. candidate split.
  500. end::dfas-feature-bag-fraction[]
  501. tag::dfas-feature-processors[]
  502. Advanced configuration option. A collection of feature preprocessors that modify
  503. one or more included fields. The analysis uses the resulting one or more
  504. features instead of the original document field. However, these features are
  505. ephemeral; they are not stored in the destination index. Multiple
  506. `feature_processors` entries can refer to the same document fields. Automatic
  507. categorical {ml-docs}/ml-feature-encoding.html[feature encoding] still occurs
  508. for the fields that are unprocessed by a custom processor or that have
  509. categorical values. Use this property only if you want to override the automatic
  510. feature encoding of the specified fields. Refer to
  511. {ml-docs}/ml-feature-processors.html[{dfanalytics} feature processors] to learn
  512. more.
  513. end::dfas-feature-processors[]
  514. tag::dfas-feature-processors-feat-name[]
  515. The resulting feature name.
  516. end::dfas-feature-processors-feat-name[]
  517. tag::dfas-feature-processors-field[]
  518. The name of the field to encode.
  519. end::dfas-feature-processors-field[]
  520. tag::dfas-feature-processors-frequency[]
  521. The configuration information necessary to perform frequency encoding.
  522. end::dfas-feature-processors-frequency[]
  523. tag::dfas-feature-processors-frequency-map[]
  524. The resulting frequency map for the field value. If the field value is missing
  525. from the `frequency_map`, the resulting value is `0`.
  526. end::dfas-feature-processors-frequency-map[]
  527. tag::dfas-feature-processors-multi[]
  528. The configuration information necessary to perform multi encoding. It allows
  529. multiple processors to be changed together. This way the output of a processor
  530. can then be passed to another as an input.
  531. end::dfas-feature-processors-multi[]
  532. tag::dfas-feature-processors-multi-proc[]
  533. The ordered array of custom processors to execute. Must be more than 1.
  534. end::dfas-feature-processors-multi-proc[]
  535. tag::dfas-feature-processors-ngram[]
  536. The configuration information necessary to perform n-gram encoding. Features
  537. created by this encoder have the following name format:
  538. `<feature_prefix>.<ngram><string position>`. For example, if the
  539. `feature_prefix` is `f`, the feature name for the second unigram in a string is
  540. `f.11`.
  541. end::dfas-feature-processors-ngram[]
  542. tag::dfas-feature-processors-ngram-feat-pref[]
  543. The feature name prefix. Defaults to `ngram_<start>_<length>`.
  544. end::dfas-feature-processors-ngram-feat-pref[]
  545. tag::dfas-feature-processors-ngram-field[]
  546. The name of the text field to encode.
  547. end::dfas-feature-processors-ngram-field[]
  548. tag::dfas-feature-processors-ngram-length[]
  549. Specifies the length of the n-gram substring. Defaults to `50`. Must be greater
  550. than `0`.
  551. end::dfas-feature-processors-ngram-length[]
  552. tag::dfas-feature-processors-ngram-ngrams[]
  553. Specifies which n-grams to gather. It’s an array of integer values where the
  554. minimum value is 1, and a maximum value is 5.
  555. end::dfas-feature-processors-ngram-ngrams[]
  556. tag::dfas-feature-processors-ngram-start[]
  557. Specifies the zero-indexed start of the n-gram substring. Negative values are
  558. allowed for encoding n-grams of string suffixes. Defaults to `0`.
  559. end::dfas-feature-processors-ngram-start[]
  560. tag::dfas-feature-processors-one-hot[]
  561. The configuration information necessary to perform one hot encoding.
  562. end::dfas-feature-processors-one-hot[]
  563. tag::dfas-feature-processors-one-hot-map[]
  564. The one hot map mapping the field value with the column name.
  565. end::dfas-feature-processors-one-hot-map[]
  566. tag::dfas-feature-processors-target-mean[]
  567. The configuration information necessary to perform target mean encoding.
  568. end::dfas-feature-processors-target-mean[]
  569. tag::dfas-feature-processors-target-mean-default[]
  570. The default value if field value is not found in the `target_map`.
  571. end::dfas-feature-processors-target-mean-default[]
  572. tag::dfas-feature-processors-target-mean-map[]
  573. The field value to target mean transition map.
  574. end::dfas-feature-processors-target-mean-map[]
  575. tag::dfas-iteration[]
  576. The number of iterations on the analysis.
  577. end::dfas-iteration[]
  578. tag::dfas-max-attempts[]
  579. If the algorithm fails to determine a non-trivial tree (more than a single
  580. leaf), this parameter determines how many of such consecutive failures are
  581. tolerated. Once the number of attempts exceeds the threshold, the forest
  582. training stops.
  583. end::dfas-max-attempts[]
  584. tag::dfas-max-optimization-rounds[]
  585. Advanced configuration option.
  586. A multiplier responsible for determining the maximum number of
  587. hyperparameter optimization steps in the Bayesian optimization procedure.
  588. The maximum number of steps is determined based on the number of undefined
  589. hyperparameters times the maximum optimization rounds per hyperparameter.
  590. By default, this value is calculated during hyperparameter optimization.
  591. end::dfas-max-optimization-rounds[]
  592. tag::dfas-num-folds[]
  593. The maximum number of folds for the cross-validation procedure.
  594. end::dfas-num-folds[]
  595. tag::dfas-num-splits[]
  596. Determines the maximum number of splits for every feature that can occur in a
  597. decision tree when the tree is trained.
  598. end::dfas-num-splits[]
  599. tag::dfas-soft-limit[]
  600. Advanced configuration option. {ml-cap} uses loss guided tree growing, which
  601. means that the decision trees grow where the regularized loss decreases most
  602. quickly. This soft limit combines with the `soft_tree_depth_tolerance` to
  603. penalize trees that exceed the specified depth; the regularized loss increases
  604. quickly beyond this depth. By default, this value is calculated during
  605. hyperparameter optimization. It must be greater than or equal to 0.
  606. end::dfas-soft-limit[]
  607. tag::dfas-soft-tolerance[]
  608. Advanced configuration option. This option controls how quickly the regularized
  609. loss increases when the tree depth exceeds `soft_tree_depth_limit`. By default,
  610. this value is calculated during hyperparameter optimization. It must be greater
  611. than or equal to 0.01.
  612. end::dfas-soft-tolerance[]
  613. tag::dfas-timestamp[]
  614. The timestamp when the statistics were reported in milliseconds since the epoch.
  615. end::dfas-timestamp[]
  616. tag::dfas-timing-stats[]
  617. An object containing time statistics about the {dfanalytics-job}.
  618. end::dfas-timing-stats[]
  619. tag::dfas-timing-stats-elapsed[]
  620. Runtime of the analysis in milliseconds.
  621. end::dfas-timing-stats-elapsed[]
  622. tag::dfas-timing-stats-iteration[]
  623. Runtime of the latest iteration of the analysis in milliseconds.
  624. end::dfas-timing-stats-iteration[]
  625. tag::dfas-validation-loss[]
  626. An object containing information about validation loss.
  627. end::dfas-validation-loss[]
  628. tag::dfas-validation-loss-fold[]
  629. Validation loss values for every added decision tree during the forest growing
  630. procedure.
  631. end::dfas-validation-loss-fold[]
  632. tag::dfas-validation-loss-type[]
  633. The type of the loss metric. For example, `binomial_logistic`.
  634. end::dfas-validation-loss-type[]
  635. tag::earliest-record-timestamp[]
  636. The timestamp of the earliest chronologically input document.
  637. end::earliest-record-timestamp[]
  638. tag::empty-bucket-count[]
  639. The number of buckets which did not contain any data. If your data
  640. contains many empty buckets, consider increasing your `bucket_span` or using
  641. functions that are tolerant to gaps in data such as `mean`, `non_null_sum` or
  642. `non_zero_count`.
  643. end::empty-bucket-count[]
  644. tag::eta[]
  645. Advanced configuration option. The shrinkage applied to the weights. Smaller
  646. values result in larger forests which have a better generalization error.
  647. However, larger forests cause slower training. For more information about
  648. shrinkage, refer to
  649. {wikipedia}/Gradient_boosting#Shrinkage[this wiki article].
  650. By default, this value is calculated during hyperparameter optimization. It must
  651. be a value between 0.001 and 1.
  652. end::eta[]
  653. tag::exclude-frequent[]
  654. Contains one of the following values: `all`, `none`, `by`, or `over`. If set,
  655. frequent entities are excluded from influencing the anomaly results. Entities
  656. can be considered frequent over time or frequent in a population. If you are
  657. working with both over and by fields, then you can set `exclude_frequent` to
  658. `all` for both fields, or to `by` or `over` for those specific fields.
  659. end::exclude-frequent[]
  660. tag::exclude-interim-results[]
  661. If `true`, the output excludes interim results. Defaults to `false`, which means interim results are included.
  662. end::exclude-interim-results[]
  663. tag::failed-category-count[]
  664. The number of times that categorization wanted to create a new category but
  665. couldn't because the job had hit its `model_memory_limit`. This count does not
  666. track which specific categories failed to be created. Therefore you cannot use
  667. this value to determine the number of unique categories that were missed.
  668. end::failed-category-count[]
  669. tag::feature-bag-fraction[]
  670. Advanced configuration option. Defines the fraction of features that will be
  671. used when selecting a random bag for each candidate split. By default, this
  672. value is calculated during hyperparameter optimization.
  673. end::feature-bag-fraction[]
  674. tag::feature-influence-threshold[]
  675. The minimum {olscore} that a document needs to have in order to calculate its
  676. {fiscore}. Value range: 0-1 (`0.1` by default).
  677. end::feature-influence-threshold[]
  678. tag::filter[]
  679. One or more <<analysis-tokenfilters,token filters>>. In addition to the built-in
  680. token filters, other plugins can provide more token filters. This property is
  681. optional. If it is not specified, no token filters are applied prior to
  682. categorization.
  683. end::filter[]
  684. tag::filter-id[]
  685. A string that uniquely identifies a filter.
  686. end::filter-id[]
  687. tag::forecast-total[]
  688. The number of individual forecasts currently available for the job. A value of
  689. `1` or more indicates that forecasts exist.
  690. end::forecast-total[]
  691. tag::exclude-generated[]
  692. Indicates if certain fields should be removed from the configuration on
  693. retrieval. This allows the configuration to be in an acceptable format to be retrieved
  694. and then added to another cluster. Default is false.
  695. end::exclude-generated[]
  696. tag::frequency[]
  697. The interval at which scheduled queries are made while the {dfeed} runs in real
  698. time. The default value is either the bucket span for short bucket spans, or,
  699. for longer bucket spans, a sensible fraction of the bucket span. For example:
  700. `150s`. When `frequency` is shorter than the bucket span, interim results for
  701. the last (partial) bucket are written then eventually overwritten by the full
  702. bucket results. If the {dfeed} uses aggregations, this value must be divisible
  703. by the interval of the date histogram aggregation.
  704. end::frequency[]
  705. tag::frequent-category-count[]
  706. The number of categories that match more than 1% of categorized documents.
  707. end::frequent-category-count[]
  708. tag::from[]
  709. Skips the specified number of {dfanalytics-jobs}. The default value is `0`.
  710. end::from[]
  711. tag::from-models[]
  712. Skips the specified number of models. The default value is `0`.
  713. end::from-models[]
  714. tag::function[]
  715. The analysis function that is used. For example, `count`, `rare`, `mean`, `min`,
  716. `max`, and `sum`. For more information, see
  717. {ml-docs}/ml-functions.html[Function reference].
  718. end::function[]
  719. tag::gamma[]
  720. Advanced configuration option. Regularization parameter to prevent overfitting
  721. on the training data set. Multiplies a linear penalty associated with the size
  722. of individual trees in the forest. A high gamma value causes training to prefer
  723. small trees. A small gamma value results in larger individual trees and slower
  724. training. By default, this value is calculated during hyperparameter
  725. optimization. It must be a nonnegative value.
  726. end::gamma[]
  727. tag::groups[]
  728. A list of job groups. A job can belong to no groups or many.
  729. end::groups[]
  730. tag::indices[]
  731. An array of index names. Wildcards are supported. For example:
  732. `["it_ops_metrics", "server*"]`.
  733. +
  734. --
  735. NOTE: If any indices are in remote clusters then the {ml} nodes need to have the
  736. `remote_cluster_client` role.
  737. --
  738. end::indices[]
  739. tag::indices-options[]
  740. Specifies index expansion options that are used during search.
  741. +
  742. --
  743. For example:
  744. ```
  745. {
  746. "expand_wildcards": ["all"],
  747. "ignore_unavailable": true,
  748. "allow_no_indices": "false",
  749. "ignore_throttled": true
  750. }
  751. ```
  752. For more information about these options, see <<multi-index>>.
  753. --
  754. end::indices-options[]
  755. tag::runtime-mappings[]
  756. Specifies runtime fields for the datafeed search.
  757. +
  758. --
  759. For example:
  760. ```
  761. {
  762. "day_of_week": {
  763. "type": "keyword",
  764. "script": {
  765. "source": "emit(doc['@timestamp'].value.dayOfWeekEnum.getDisplayName(TextStyle.FULL, Locale.ROOT))"
  766. }
  767. }
  768. }
  769. ```
  770. --
  771. end::runtime-mappings[]
  772. tag::inference-config-classification-num-top-classes[]
  773. Specifies the number of top class predictions to return. Defaults to 0.
  774. end::inference-config-classification-num-top-classes[]
  775. tag::inference-config-classification-num-top-feature-importance-values[]
  776. Specifies the maximum number of
  777. {ml-docs}/ml-feature-importance.html[{feat-imp}] values per document. By
  778. default, it is zero and no {feat-imp} calculation occurs.
  779. end::inference-config-classification-num-top-feature-importance-values[]
  780. tag::inference-config-classification-top-classes-results-field[]
  781. Specifies the field to which the top classes are written. Defaults to
  782. `top_classes`.
  783. end::inference-config-classification-top-classes-results-field[]
  784. tag::inference-config-classification-prediction-field-type[]
  785. Specifies the type of the predicted field to write.
  786. Acceptable values are: `string`, `number`, `boolean`. When `boolean` is provided
  787. `1.0` is transformed to `true` and `0.0` to `false`.
  788. end::inference-config-classification-prediction-field-type[]
  789. tag::inference-config-regression-num-top-feature-importance-values[]
  790. Specifies the maximum number of
  791. {ml-docs}/ml-feature-importance.html[{feat-imp}] values per document.
  792. By default, it is zero and no {feat-imp} calculation occurs.
  793. end::inference-config-regression-num-top-feature-importance-values[]
  794. tag::inference-config-results-field[]
  795. The field that is added to incoming documents to contain the inference
  796. prediction. Defaults to `predicted_value`.
  797. end::inference-config-results-field[]
  798. tag::inference-config-results-field-processor[]
  799. The field that is added to incoming documents to contain the inference
  800. prediction. Defaults to the `results_field` value of the {dfanalytics-job} that was
  801. used to train the model, which defaults to `<dependent_variable>_prediction`.
  802. end::inference-config-results-field-processor[]
  803. tag::inference-metadata-feature-importance-feature-name[]
  804. The feature for which this importance was calculated.
  805. end::inference-metadata-feature-importance-feature-name[]
  806. tag::inference-metadata-feature-importance-magnitude[]
  807. The average magnitude of this feature across all the training data.
  808. This value is the average of the absolute values of the importance
  809. for this feature.
  810. end::inference-metadata-feature-importance-magnitude[]
  811. tag::inference-metadata-feature-importance-max[]
  812. The maximum importance value across all the training data for this
  813. feature.
  814. end::inference-metadata-feature-importance-max[]
  815. tag::inference-metadata-feature-importance-min[]
  816. The minimum importance value across all the training data for this
  817. feature.
  818. end::inference-metadata-feature-importance-min[]
  819. tag::influencers[]
  820. A comma separated list of influencer field names. Typically these can be the by,
  821. over, or partition fields that are used in the detector configuration. You might
  822. also want to use a field name that is not specifically named in a detector, but
  823. is available as part of the input data. When you use multiple detectors, the use
  824. of influencers is recommended as it aggregates results for each influencer
  825. entity.
  826. end::influencers[]
  827. tag::input-bytes[]
  828. The number of bytes of input data posted to the {anomaly-job}.
  829. end::input-bytes[]
  830. tag::input-field-count[]
  831. The total number of fields in input documents posted to the {anomaly-job}. This
  832. count includes fields that are not used in the analysis. However, be aware that
  833. if you are using a {dfeed}, it extracts only the required fields from the
  834. documents it retrieves before posting them to the job.
  835. end::input-field-count[]
  836. tag::input-record-count[]
  837. The number of input documents posted to the {anomaly-job}.
  838. end::input-record-count[]
  839. tag::invalid-date-count[]
  840. The number of input documents with either a missing date field or a date that
  841. could not be parsed.
  842. end::invalid-date-count[]
  843. tag::is-interim[]
  844. If `true`, this is an interim result. In other words, the results are calculated
  845. based on partial input data.
  846. end::is-interim[]
  847. tag::job-id-anomaly-detection[]
  848. Identifier for the {anomaly-job}.
  849. end::job-id-anomaly-detection[]
  850. tag::job-id-data-frame-analytics[]
  851. Identifier for the {dfanalytics-job}.
  852. end::job-id-data-frame-analytics[]
  853. tag::job-id-anomaly-detection-default[]
  854. Identifier for the {anomaly-job}. It can be a job identifier, a group name, or a
  855. wildcard expression. If you do not specify one of these options, the API returns
  856. information for all {anomaly-jobs}.
  857. end::job-id-anomaly-detection-default[]
  858. tag::job-id-data-frame-analytics-default[]
  859. Identifier for the {dfanalytics-job}. If you do not specify this option, the API
  860. returns information for the first hundred {dfanalytics-jobs}.
  861. end::job-id-data-frame-analytics-default[]
  862. tag::job-id-anomaly-detection-list[]
  863. An identifier for the {anomaly-jobs}. It can be a job
  864. identifier, a group name, or a comma-separated list of jobs or groups.
  865. end::job-id-anomaly-detection-list[]
  866. tag::job-id-anomaly-detection-wildcard[]
  867. Identifier for the {anomaly-job}. It can be a job identifier, a group name, or a
  868. wildcard expression.
  869. end::job-id-anomaly-detection-wildcard[]
  870. tag::job-id-anomaly-detection-wildcard-list[]
  871. Identifier for the {anomaly-job}. It can be a job identifier, a group name, a
  872. comma-separated list of jobs or groups, or a wildcard expression.
  873. end::job-id-anomaly-detection-wildcard-list[]
  874. tag::job-id-anomaly-detection-define[]
  875. Identifier for the {anomaly-job}. This identifier can contain lowercase
  876. alphanumeric characters (a-z and 0-9), hyphens, and underscores. It must start
  877. and end with alphanumeric characters.
  878. end::job-id-anomaly-detection-define[]
  879. tag::job-id-data-frame-analytics-define[]
  880. Identifier for the {dfanalytics-job}. This identifier can contain lowercase
  881. alphanumeric characters (a-z and 0-9), hyphens, and underscores. It must start
  882. and end with alphanumeric characters.
  883. end::job-id-data-frame-analytics-define[]
  884. tag::job-id-datafeed[]
  885. The unique identifier for the job to which the {dfeed} sends data.
  886. end::job-id-datafeed[]
  887. tag::lambda[]
  888. Advanced configuration option. Regularization parameter to prevent overfitting
  889. on the training data set. Multiplies an L2 regularization term which applies to
  890. leaf weights of the individual trees in the forest. A high lambda value causes
  891. training to favor small leaf weights. This behavior makes the prediction
  892. function smoother at the expense of potentially not being able to capture
  893. relevant relationships between the features and the {depvar}. A small lambda
  894. value results in large individual trees and slower training. By default, this
  895. value is calculated during hyperparameter optimization. It must be a nonnegative
  896. value.
  897. end::lambda[]
  898. tag::last-data-time[]
  899. The timestamp at which data was last analyzed, according to server time.
  900. end::last-data-time[]
  901. tag::latency[]
  902. The size of the window in which to expect data that is out of time order. The
  903. default value is 0 (no latency). If you specify a non-zero value, it must be
  904. greater than or equal to one second. For more information about time units, see
  905. <<time-units>>.
  906. +
  907. --
  908. NOTE: Latency is only applicable when you send data by using
  909. the <<ml-post-data,post data>> API.
  910. --
  911. end::latency[]
  912. tag::latest-empty-bucket-timestamp[]
  913. The timestamp of the last bucket that did not contain any data.
  914. end::latest-empty-bucket-timestamp[]
  915. tag::latest-record-timestamp[]
  916. The timestamp of the latest chronologically input document.
  917. end::latest-record-timestamp[]
  918. tag::latest-sparse-record-timestamp[]
  919. The timestamp of the last bucket that was considered sparse.
  920. end::latest-sparse-record-timestamp[]
  921. tag::max-empty-searches[]
  922. If a real-time {dfeed} has never seen any data (including during any initial
  923. training period) then it will automatically stop itself and close its associated
  924. job after this many real-time searches that return no documents. In other words,
  925. it will stop after `frequency` times `max_empty_searches` of real-time
  926. operation. If not set then a {dfeed} with no end time that sees no data will
  927. remain started until it is explicitly stopped. By default this setting is not
  928. set.
  929. end::max-empty-searches[]
  930. tag::max-trees[]
  931. Advanced configuration option. Defines the maximum number of decision trees in
  932. the forest. The maximum value is 2000. By default, this value is calculated
  933. during hyperparameter optimization.
  934. end::max-trees[]
  935. tag::max-trees-trained-models[]
  936. The maximum number of decision trees in the forest. The maximum value is 2000.
  937. By default, this value is calculated during hyperparameter optimization.
  938. end::max-trees-trained-models[]
  939. tag::method[]
  940. The method that {oldetection} uses. Available methods are `lof`, `ldof`,
  941. `distance_kth_nn`, `distance_knn`, and `ensemble`. The default value is
  942. `ensemble`, which means that {oldetection} uses an ensemble of different methods
  943. and normalises and combines their individual {olscores} to obtain the overall
  944. {olscore}.
  945. end::method[]
  946. tag::missing-field-count[]
  947. The number of input documents that are missing a field that the {anomaly-job} is
  948. configured to analyze. Input documents with missing fields are still processed
  949. because it is possible that not all fields are missing.
  950. +
  951. --
  952. NOTE: If you are using {dfeeds} or posting data to the job in JSON format, a
  953. high `missing_field_count` is often not an indication of data issues. It is not
  954. necessarily a cause for concern.
  955. --
  956. end::missing-field-count[]
  957. tag::mode[]
  958. There are three available modes:
  959. +
  960. --
  961. * `auto`: The chunk size is dynamically calculated. This is the default and
  962. recommended value when the {dfeed} does not use aggregations.
  963. * `manual`: Chunking is applied according to the specified `time_span`. Use this
  964. mode when the {dfeed} uses aggregations.
  965. * `off`: No chunking is applied.
  966. --
  967. end::mode[]
  968. tag::model-bytes[]
  969. The number of bytes of memory used by the models. This is the maximum value
  970. since the last time the model was persisted. If the job is closed, this value
  971. indicates the latest size.
  972. end::model-bytes[]
  973. tag::model-bytes-exceeded[]
  974. The number of bytes over the high limit for memory usage at the last allocation
  975. failure.
  976. end::model-bytes-exceeded[]
  977. tag::model-id[]
  978. The unique identifier of the trained model.
  979. end::model-id[]
  980. tag::model-id-or-alias[]
  981. The unique identifier of the trained model or a model alias.
  982. end::model-id-or-alias[]
  983. tag::model-memory-limit-ad[]
  984. The approximate maximum amount of memory resources that are required for
  985. analytical processing. Once this limit is approached, data pruning becomes
  986. more aggressive. Upon exceeding this limit, new entities are not modeled. The
  987. default value for jobs created in version 6.1 and later is `1024mb`. If the
  988. `xpack.ml.max_model_memory_limit` setting has a value greater than `0` and less
  989. than `1024mb`, however, that value is used instead. The default value is
  990. relatively small to ensure that high resource usage is a conscious decision. If
  991. you have jobs that are expected to analyze high cardinality fields, you will
  992. likely need to use a higher value.
  993. +
  994. If you specify a number instead of a string, the units are assumed to be MiB.
  995. Specifying a string is recommended for clarity. If you specify a byte size unit
  996. of `b` or `kb` and the number does not equate to a discrete number of megabytes,
  997. it is rounded down to the closest MiB. The minimum valid value is 1 MiB. If you
  998. specify a value less than 1 MiB, an error occurs. For more information about
  999. supported byte size units, see <<byte-units>>.
  1000. +
  1001. If you specify a value for the `xpack.ml.max_model_memory_limit` setting, an
  1002. error occurs when you try to create jobs that have `model_memory_limit` values
  1003. greater than that setting value. For more information, see <<ml-settings>>.
  1004. end::model-memory-limit-ad[]
  1005. tag::model-memory-limit-anomaly-jobs[]
  1006. The upper limit for model memory usage, checked on increasing values.
  1007. end::model-memory-limit-anomaly-jobs[]
  1008. tag::model-memory-limit-dfa[]
  1009. The approximate maximum amount of memory resources that are permitted for
  1010. analytical processing. The default value for {dfanalytics-jobs} is `1gb`. If
  1011. you specify a value for the `xpack.ml.max_model_memory_limit` setting, an error
  1012. occurs when you try to create jobs that have `model_memory_limit` values greater
  1013. than that setting value. For more information, see
  1014. <<ml-settings>>.
  1015. end::model-memory-limit-dfa[]
  1016. tag::model-memory-status[]
  1017. The status of the mathematical models, which can have one of the following
  1018. values:
  1019. +
  1020. --
  1021. * `ok`: The models stayed below the configured value.
  1022. * `soft_limit`: The models used more than 60% of the configured memory limit
  1023. and older unused models will be pruned to free up space. Additionally, in
  1024. categorization jobs no further category examples will be stored.
  1025. * `hard_limit`: The models used more space than the configured memory limit.
  1026. As a result, not all incoming data was processed.
  1027. --
  1028. end::model-memory-status[]
  1029. tag::model-plot-config[]
  1030. This advanced configuration option stores model information along with the
  1031. results. It provides a more detailed view into {anomaly-detect}.
  1032. +
  1033. --
  1034. WARNING: If you enable model plot it can add considerable overhead to the
  1035. performance of the system; it is not feasible for jobs with many entities.
  1036. Model plot provides a simplified and indicative view of the model and its
  1037. bounds. It does not display complex features such as multivariate correlations
  1038. or multimodal data. As such, anomalies may occasionally be reported which cannot
  1039. be seen in the model plot.
  1040. Model plot config can be configured when the job is created or updated later. It
  1041. must be disabled if performance issues are experienced.
  1042. --
  1043. end::model-plot-config[]
  1044. tag::model-plot-config-annotations-enabled[]
  1045. If true, enables calculation and storage of the model change annotations
  1046. for each entity that is being analyzed. Defaults to `enabled`.
  1047. end::model-plot-config-annotations-enabled[]
  1048. tag::model-plot-config-enabled[]
  1049. If true, enables calculation and storage of the model bounds for each entity
  1050. that is being analyzed. By default, this is not enabled.
  1051. end::model-plot-config-enabled[]
  1052. tag::model-plot-config-terms[]
  1053. Limits data collection to this comma separated list of partition or by field
  1054. values. If terms are not specified or it is an empty string, no filtering is
  1055. applied. For example, "CPU,NetworkIn,DiskWrites". Wildcards are not supported.
  1056. Only the specified `terms` can be viewed when using the Single Metric Viewer.
  1057. end::model-plot-config-terms[]
  1058. tag::model-snapshot-id[]
  1059. A numerical character string that uniquely identifies the model snapshot. For
  1060. example, `1575402236000 `.
  1061. end::model-snapshot-id[]
  1062. tag::model-snapshot-retention-days[]
  1063. Advanced configuration option, which affects the automatic removal of old model
  1064. snapshots for this job. It specifies the maximum period of time (in days) that
  1065. snapshots are retained. This period is relative to the timestamp of the most
  1066. recent snapshot for this job. The default value is `10`, which means snapshots
  1067. ten days older than the newest snapshot are deleted. For more information, refer
  1068. to {ml-docs}/ml-model-snapshots.html[Model snapshots].
  1069. end::model-snapshot-retention-days[]
  1070. tag::model-timestamp[]
  1071. The timestamp of the last record when the model stats were gathered.
  1072. end::model-timestamp[]
  1073. tag::multivariate-by-fields[]
  1074. This functionality is reserved for internal use. It is not supported for use in
  1075. customer environments and is not subject to the support SLA of official GA
  1076. features.
  1077. +
  1078. --
  1079. If set to `true`, the analysis will automatically find correlations between
  1080. metrics for a given `by` field value and report anomalies when those
  1081. correlations cease to hold. For example, suppose CPU and memory usage on host A
  1082. is usually highly correlated with the same metrics on host B. Perhaps this
  1083. correlation occurs because they are running a load-balanced application.
  1084. If you enable this property, then anomalies will be reported when, for example,
  1085. CPU usage on host A is high and the value of CPU usage on host B is low. That
  1086. is to say, you'll see an anomaly when the CPU of host A is unusual given
  1087. the CPU of host B.
  1088. NOTE: To use the `multivariate_by_fields` property, you must also specify
  1089. `by_field_name` in your detector.
  1090. --
  1091. end::multivariate-by-fields[]
  1092. tag::n-neighbors[]
  1093. Defines the value for how many nearest neighbors each method of {oldetection}
  1094. uses to calculate its {olscore}. When the value is not set, different values are
  1095. used for different ensemble members. This default behavior helps improve the
  1096. diversity in the ensemble; only override it if you are confident that the value
  1097. you choose is appropriate for the data set.
  1098. end::n-neighbors[]
  1099. tag::node-address[]
  1100. The network address of the node.
  1101. end::node-address[]
  1102. tag::node-attributes[]
  1103. Lists node attributes such as `ml.machine_memory` or `ml.max_open_jobs` settings.
  1104. end::node-attributes[]
  1105. tag::node-datafeeds[]
  1106. For started {dfeeds} only, this information pertains to the node upon which the
  1107. {dfeed} is started.
  1108. end::node-datafeeds[]
  1109. tag::node-ephemeral-id[]
  1110. The ephemeral ID of the node.
  1111. end::node-ephemeral-id[]
  1112. tag::node-id[]
  1113. The unique identifier of the node.
  1114. end::node-id[]
  1115. tag::node-jobs[]
  1116. Contains properties for the node that runs the job. This information is
  1117. available only for open jobs.
  1118. end::node-jobs[]
  1119. tag::node-transport-address[]
  1120. The host and port where transport HTTP connections are accepted.
  1121. end::node-transport-address[]
  1122. tag::open-time[]
  1123. For open jobs only, the elapsed time for which the job has been open.
  1124. end::open-time[]
  1125. tag::out-of-order-timestamp-count[]
  1126. The number of input documents that have a timestamp chronologically
  1127. preceding the start of the current anomaly detection bucket offset by
  1128. the latency window. This information is applicable only when you provide
  1129. data to the {anomaly-job} by using the <<ml-post-data,post data API>>.
  1130. These out of order documents are discarded, since jobs require time
  1131. series data to be in ascending chronological order.
  1132. end::out-of-order-timestamp-count[]
  1133. tag::outlier-fraction[]
  1134. The proportion of the data set that is assumed to be outlying prior to
  1135. {oldetection}. For example, 0.05 means it is assumed that 5% of values are real
  1136. outliers and 95% are inliers.
  1137. end::outlier-fraction[]
  1138. tag::over-field-name[]
  1139. The field used to split the data. In particular, this property is used for
  1140. analyzing the splits with respect to the history of all splits. It is used for
  1141. finding unusual values in the population of all splits. For more information,
  1142. see {ml-docs}/ml-configuring-populations.html[Performing population analysis].
  1143. end::over-field-name[]
  1144. tag::partition-field-name[]
  1145. The field used to segment the analysis. When you use this property, you have
  1146. completely independent baselines for each value of this field.
  1147. end::partition-field-name[]
  1148. tag::peak-model-bytes[]
  1149. The peak number of bytes of memory ever used by the models.
  1150. end::peak-model-bytes[]
  1151. tag::per-partition-categorization[]
  1152. Settings related to how categorization interacts with partition fields.
  1153. end::per-partition-categorization[]
  1154. tag::per-partition-categorization-enabled[]
  1155. To enable this setting, you must also set the partition_field_name property to
  1156. the same value in every detector that uses the keyword mlcategory. Otherwise,
  1157. job creation fails.
  1158. end::per-partition-categorization-enabled[]
  1159. tag::per-partition-categorization-stop-on-warn[]
  1160. This setting can be set to true only if per-partition categorization is enabled.
  1161. If true, both categorization and subsequent anomaly detection stops for
  1162. partitions where the categorization status changes to `warn`. This setting makes
  1163. it viable to have a job where it is expected that categorization works well for
  1164. some partitions but not others; you do not pay the cost of bad categorization
  1165. forever in the partitions where it works badly.
  1166. end::per-partition-categorization-stop-on-warn[]
  1167. tag::prediction-field-name[]
  1168. Defines the name of the prediction field in the results.
  1169. Defaults to `<dependent_variable>_prediction`.
  1170. end::prediction-field-name[]
  1171. tag::processed-field-count[]
  1172. The total number of fields in all the documents that have been processed by the
  1173. {anomaly-job}. Only fields that are specified in the detector configuration
  1174. object contribute to this count. The timestamp is not included in this count.
  1175. end::processed-field-count[]
  1176. tag::processed-record-count[]
  1177. The number of input documents that have been processed by the {anomaly-job}.
  1178. This value includes documents with missing fields, since they are nonetheless
  1179. analyzed. If you use {dfeeds} and have aggregations in your search query, the
  1180. `processed_record_count` is the number of aggregation results processed, not the
  1181. number of {es} documents.
  1182. end::processed-record-count[]
  1183. tag::randomize-seed[]
  1184. Defines the seed for the random generator that is used to pick training data. By
  1185. default, it is randomly generated. Set it to a specific value to use the same
  1186. training data each time you start a job (assuming other related parameters such
  1187. as `source` and `analyzed_fields` are the same).
  1188. end::randomize-seed[]
  1189. tag::query[]
  1190. The {es} query domain-specific language (DSL). This value corresponds to the
  1191. query object in an {es} search POST body. All the options that are supported by
  1192. {es} can be used, as this object is passed verbatim to {es}. By default, this
  1193. property has the following value: `{"match_all": {"boost": 1}}`.
  1194. end::query[]
  1195. tag::query-delay[]
  1196. The number of seconds behind real time that data is queried. For example, if
  1197. data from 10:04 a.m. might not be searchable in {es} until 10:06 a.m., set this
  1198. property to 120 seconds. The default value is randomly selected between `60s`
  1199. and `120s`. This randomness improves the query performance when there are
  1200. multiple jobs running on the same node. For more information, see
  1201. {ml-docs}/ml-delayed-data-detection.html[Handling delayed data].
  1202. end::query-delay[]
  1203. tag::rare-category-count[]
  1204. The number of categories that match just one categorized document.
  1205. end::rare-category-count[]
  1206. tag::renormalization-window-days[]
  1207. Advanced configuration option. The period over which adjustments to the score
  1208. are applied, as new data is seen. The default value is the longer of 30 days or
  1209. 100 `bucket_spans`.
  1210. end::renormalization-window-days[]
  1211. tag::results-index-name[]
  1212. A text string that affects the name of the {ml} results index. The default value
  1213. is `shared`, which generates an index named `.ml-anomalies-shared`.
  1214. end::results-index-name[]
  1215. tag::results-retention-days[]
  1216. Advanced configuration option. The period of time (in days) that results are
  1217. retained. Age is calculated relative to the timestamp of the latest bucket
  1218. result. If this property has a non-null value, once per day at 00:30 (server
  1219. time), results that are the specified number of days older than the latest
  1220. bucket result are deleted from {es}. The default value is null, which means all
  1221. results are retained.
  1222. end::results-retention-days[]
  1223. tag::retain[]
  1224. If `true`, this snapshot will not be deleted during automatic cleanup of
  1225. snapshots older than `model_snapshot_retention_days`. However, this snapshot
  1226. will be deleted when the job is deleted. The default value is `false`.
  1227. end::retain[]
  1228. tag::script-fields[]
  1229. Specifies scripts that evaluate custom expressions and returns script fields to
  1230. the {dfeed}. The detector configuration objects in a job can contain functions
  1231. that use these script fields. For more information, see
  1232. {ml-docs}/ml-configuring-transform.html[Transforming data with script fields]
  1233. and <<script-fields,Script fields>>.
  1234. end::script-fields[]
  1235. tag::scroll-size[]
  1236. The `size` parameter that is used in {es} searches when the {dfeed} does not use
  1237. aggregations. The default value is `1000`. The maximum value is the value of
  1238. `index.max_result_window` which is 10,000 by default.
  1239. end::scroll-size[]
  1240. tag::search-bucket-avg[]
  1241. The average search time per bucket, in milliseconds.
  1242. end::search-bucket-avg[]
  1243. tag::search-count[]
  1244. The number of searches run by the {dfeed}.
  1245. end::search-count[]
  1246. tag::search-exp-avg-hour[]
  1247. The exponential average search time per hour, in milliseconds.
  1248. end::search-exp-avg-hour[]
  1249. tag::search-time[]
  1250. The total time the {dfeed} spent searching, in milliseconds.
  1251. end::search-time[]
  1252. tag::size[]
  1253. Specifies the maximum number of {dfanalytics-jobs} to obtain. The default value
  1254. is `100`.
  1255. end::size[]
  1256. tag::size-models[]
  1257. Specifies the maximum number of models to obtain. The default value
  1258. is `100`.
  1259. end::size-models[]
  1260. tag::snapshot-id[]
  1261. Identifier for the model snapshot.
  1262. end::snapshot-id[]
  1263. tag::sparse-bucket-count[]
  1264. The number of buckets that contained few data points compared to the expected
  1265. number of data points. If your data contains many sparse buckets, consider using
  1266. a longer `bucket_span`.
  1267. end::sparse-bucket-count[]
  1268. tag::standardization-enabled[]
  1269. If `true`, the following operation is performed on the columns before computing
  1270. outlier scores: (x_i - mean(x_i)) / sd(x_i). Defaults to `true`. For more
  1271. information about this concept, see
  1272. {wikipedia}/Feature_scaling#Standardization_(Z-score_Normalization)[Wikipedia].
  1273. end::standardization-enabled[]
  1274. tag::state-anomaly-job[]
  1275. The status of the {anomaly-job}, which can be one of the following values:
  1276. +
  1277. --
  1278. * `closed`: The job finished successfully with its model state persisted. The
  1279. job must be opened before it can accept further data.
  1280. * `closing`: The job close action is in progress and has not yet completed. A
  1281. closing job cannot accept further data.
  1282. * `failed`: The job did not finish successfully due to an error. This situation
  1283. can occur due to invalid input data, a fatal error occurring during the
  1284. analysis, or an external interaction such as the process being killed by the
  1285. Linux out of memory (OOM) killer. If the job had irrevocably failed, it must be
  1286. force closed and then deleted. If the {dfeed} can be corrected, the job can be
  1287. closed and then re-opened.
  1288. * `opened`: The job is available to receive and process data.
  1289. * `opening`: The job open action is in progress and has not yet completed.
  1290. --
  1291. end::state-anomaly-job[]
  1292. tag::state-datafeed[]
  1293. The status of the {dfeed}, which can be one of the following values:
  1294. +
  1295. --
  1296. * `starting`: The {dfeed} has been requested to start but has not yet started.
  1297. * `started`: The {dfeed} is actively receiving data.
  1298. * `stopping`: The {dfeed} has been requested to stop gracefully and is
  1299. completing its final action.
  1300. * `stopped`: The {dfeed} is stopped and will not receive data until it is
  1301. re-started.
  1302. --
  1303. end::state-datafeed[]
  1304. tag::summary-count-field-name[]
  1305. If this property is specified, the data that is fed to the job is expected to be
  1306. pre-summarized. This property value is the name of the field that contains the
  1307. count of raw data points that have been summarized. The same
  1308. `summary_count_field_name` applies to all detectors in the job.
  1309. +
  1310. --
  1311. NOTE: The `summary_count_field_name` property cannot be used with the `metric`
  1312. function.
  1313. --
  1314. end::summary-count-field-name[]
  1315. tag::tags[]
  1316. A comma delimited string of tags. A trained model can have many tags, or none.
  1317. When supplied, only trained models that contain all the supplied tags are
  1318. returned.
  1319. end::tags[]
  1320. tag::timeout-start[]
  1321. Controls the amount of time to wait until the {dfanalytics-job} starts. Defaults
  1322. to 20 seconds.
  1323. end::timeout-start[]
  1324. tag::timeout-stop[]
  1325. Controls the amount of time to wait until the {dfanalytics-job} stops. Defaults
  1326. to 20 seconds.
  1327. end::timeout-stop[]
  1328. tag::time-format[]
  1329. The time format, which can be `epoch`, `epoch_ms`, or a custom pattern. The
  1330. default value is `epoch`, which refers to UNIX or Epoch time (the number of
  1331. seconds since 1 Jan 1970). The value `epoch_ms` indicates that time is measured
  1332. in milliseconds since the epoch. The `epoch` and `epoch_ms` time formats accept
  1333. either integer or real values. +
  1334. +
  1335. NOTE: Custom patterns must conform to the Java `DateTimeFormatter` class.
  1336. When you use date-time formatting patterns, it is recommended that you provide
  1337. the full date, time and time zone. For example: `yyyy-MM-dd'T'HH:mm:ssX`.
  1338. If the pattern that you specify is not sufficient to produce a complete
  1339. timestamp, job creation fails.
  1340. end::time-format[]
  1341. tag::time-span[]
  1342. The time span that each search will be querying. This setting is only applicable
  1343. when the mode is set to `manual`. For example: `3h`.
  1344. end::time-span[]
  1345. tag::timestamp-results[]
  1346. The start time of the bucket for which these results were calculated.
  1347. end::timestamp-results[]
  1348. tag::tokenizer[]
  1349. The name or definition of the <<analysis-tokenizers,tokenizer>> to use after
  1350. character filters are applied. This property is compulsory if
  1351. `categorization_analyzer` is specified as an object. Machine learning provides
  1352. a tokenizer called `ml_standard` that tokenizes in a way that has been
  1353. determined to produce good categorization results on a variety of log
  1354. file formats for logs in English. If you want to use that tokenizer but
  1355. change the character or token filters, specify `"tokenizer": "ml_standard"`
  1356. in your `categorization_analyzer`. Additionally, the `ml_classic` tokenizer
  1357. is available, which tokenizes in the same way as the non-customizable
  1358. tokenizer in old versions of the product (before 6.2). `ml_classic` was
  1359. the default categorization tokenizer in versions 6.2 to 7.13, so if you
  1360. need categorization identical to the default for jobs created in these
  1361. versions, specify `"tokenizer": "ml_classic"` in your `categorization_analyzer`.
  1362. end::tokenizer[]
  1363. tag::total-by-field-count[]
  1364. The number of `by` field values that were analyzed by the models. This value is
  1365. cumulative for all detectors in the job.
  1366. end::total-by-field-count[]
  1367. tag::total-category-count[]
  1368. The number of categories created by categorization.
  1369. end::total-category-count[]
  1370. tag::total-over-field-count[]
  1371. The number of `over` field values that were analyzed by the models. This value
  1372. is cumulative for all detectors in the job.
  1373. end::total-over-field-count[]
  1374. tag::total-partition-field-count[]
  1375. The number of `partition` field values that were analyzed by the models. This
  1376. value is cumulative for all detectors in the job.
  1377. end::total-partition-field-count[]
  1378. tag::training-percent[]
  1379. Defines what percentage of the eligible documents that will
  1380. be used for training. Documents that are ignored by the analysis (for example
  1381. those that contain arrays with more than one value) won’t be included in the
  1382. calculation for used percentage. Defaults to `100`.
  1383. end::training-percent[]
  1384. tag::use-null[]
  1385. Defines whether a new series is used as the null series when there is no value
  1386. for the by or partition fields. The default value is `false`.
  1387. end::use-null[]
  1388. tag::verbose[]
  1389. Defines whether the stats response should be verbose. The default value is `false`.
  1390. end::verbose[]