[role="xpack"] [testenv="basic"] [[get-data-frame-transform-stats]] === Get {dataframe-transform} statistics API [subs="attributes"] ++++ Get {dataframe-transform} statistics ++++ Retrieves usage information for {dataframe-transforms}. beta[] [[get-data-frame-transform-stats-request]] ==== {api-request-title} `GET _data_frame/transforms//_stats` `GET _data_frame/transforms/,/_stats` + `GET _data_frame/transforms/_stats` + `GET _data_frame/transforms/_all/_stats` + `GET _data_frame/transforms/*/_stats` + [[get-data-frame-transform-stats-prereqs]] ==== {api-prereq-title} * If the {es} {security-features} are enabled, you must have `monitor_data_frame_transforms` cluster privileges to use this API. The built-in `data_frame_transforms_user` role has these privileges. For more information, see {stack-ov}/security-privileges.html[Security privileges] and {stack-ov}/built-in-roles.html[Built-in roles]. [[get-data-frame-transform-stats-desc]] ==== {api-description-title} You can get statistics for multiple {dataframe-transforms} in a single API request by using a comma-separated list of identifiers or a wildcard expression. You can get statistics for all {dataframe-transforms} by using `_all`, by specifying `*` as the ``, or by omitting the ``. [[get-data-frame-transform-stats-path-parms]] ==== {api-path-parms-title} ``:: (Optional, string) Identifier for the {dataframe-transform}. It can be a {dataframe-transform} identifier or a wildcard expression. If you do not specify one of these options, the API returns information for all {dataframe-transforms}. [[get-data-frame-transform-stats-query-parms]] ==== {api-query-parms-title} `allow_no_match`:: (Optional, boolean) Specifies what to do when the request: + -- * Contains wildcard expressions and there are no {dataframe-transforms} that match. * Contains the `_all` string or no identifiers and there are no matches. * Contains wildcard expressions and there are only partial matches. The default value is `true`, which returns an empty `transforms` array when there are no matches and the subset of results when there are partial matches. If this parameter is `false`, the request returns a `404` status code when there are no matches or only partial matches. -- `from`:: (Optional, integer) Skips the specified number of {dataframe-transforms}. The default value is `0`. `size`:: (Optional, integer) Specifies the maximum number of {dataframe-transforms} to obtain. The default value is `100`. [[get-data-frame-transform-stats-response]] ==== {api-response-body-title} `transforms`:: (array) An array of statistics objects for {dataframe-transforms}, which are sorted by the `id` value in ascending order. [[get-data-frame-transform-stats-response-codes]] ==== {api-response-codes-title} `404` (Missing resources):: If `allow_no_match` is `false`, this code indicates that there are no resources that match the request or only partial matches for the request. [[get-data-frame-transform-stats-example]] ==== Examples The following example skips for the first five {dataframe-transforms} and gets usage information for a maximum of ten results: [source,js] -------------------------------------------------- GET _data_frame/transforms/_stats?from=5&size=10 -------------------------------------------------- // CONSOLE // TEST[skip:todo] The following example gets usage information for the `ecommerce_transform` {dataframe-transform}: [source,js] -------------------------------------------------- GET _data_frame/transforms/ecommerce_transform/_stats -------------------------------------------------- // CONSOLE // TEST[skip:todo] The API returns the following results: [source,console-result] ---- { "count" : 1, "transforms" : [ { "id" : "ecommerce_transform", "state" : "indexing", "stats" : { "pages_processed" : 2, "documents_processed" : 1220, "documents_indexed" : 13, "trigger_count" : 1, "index_time_in_ms" : 19, "index_total" : 1, "index_failures" : 0, "search_time_in_ms" : 52, "search_total" : 2, "search_failures" : 0, "exponential_avg_checkpoint_duration_ms" : 77, "exponential_avg_documents_indexed" : 2, "exponential_avg_documents_processed" : 12 }, "checkpointing" : { "last" : { "checkpoint" : 100, "timestamp_millis" : 1561740252497, "time_upper_bound_millis" : 1561740192497 }, "next" : { "checkpoint" : 101, "position" : { "indexer_position" : { "hashtag" : "abcd1234" }, "buckets_position" : { "hashtag" : "abcd5678" } }, "checkpoint_progress" : { "documents_processed": 100, "documents_indexed": 1 }, "changes_last_detected_at": 1561740629170, "timestamp_millis" : 1561740629172, "time_upper_bound_millis" : 1561740569172 }, "operations_behind": 27000 } } ] } ----