DataKitchen DataOps Documention

Order Run Details

Users can find information and results on each order run in the UI or via the command line.

UI Order Run Details

The Order Run Details page displays run status, testing and timing information, and logs for an entire order run and for each node in the graph.

Tour the Order Run Details page

  1. Breadcrumbs: provide quick access to return to the Recipe and Variation pages.
  2. Order run tools:
    • Test Results: opens a dialog with results from all node tests
    • Timings Graph: opens a graph showing run times by node
    • Runtime Variables: opens a list of compiled variables (secrets display as vault paths)
    • Logs: opens a dialog with the first 2000 lines of log entries, offers filtering and export functions
    • Run Variation Once: executes the graph again
    • Resume Order: begins executing a failed order at the point of failure
    • Variation Metrics: opens a new tab for the Order Metrics page
    • Show Details: opens a sidebar with general details on the order run
  3. Status message: shows when orders are planned, executing, failed, or completed
  4. Graph Mode: selections change the appearance of the nodes
  5. Graph: represents the variation graph
    Clicking a node opens the Node Details sidebar with data specific to that node. Users can access the Node Editor from a link in this sidebar.
  6. Graph view tools: adjusts the size and orientation of the graph
  7. Show Legend: defines the node types based on the selected graph mode
  8. Export Graph: downloads a PNG or SVG file of the graph image.

CLI Order Run Details

Users can access detailed information generated by any order run via the command line with the orderrun-info command.

Get Details on Latest Order Run

If an order ID is not submitted as a parameter for the orderrun-info command details from the latest order run in the specified kitchen will be returned.

~$ dk orderrun-info --order_run_id 802213bc-3662-11e9-9f7b-0ad19868a29a --summary
Current context is: default
YYYY-MM-DD HH:MM:SS - Display Order-Run details from kitchen eric_dev

ORDER RUN SUMMARY

Order ID:       887d01ba-365e-11e9-8394-0242ac110002
Order Run ID:   802213bc-3662-11e9-9f7b-0ad19868a29a
Status:         COMPLETED_SERVING
Kitchen:        eric_dev
Recipe:         test_sources_sinks
Variation:      scheduled
Start time:     YYYY-MM-DD HH:MM:SS EST
Run duration:   0:00:12 (H:M:S)
~ $ dk orderrun-info --order_run_id 802213bc-3662-11e9-9f7b-0ad19868a29a --timing
Current context is: default
YYYY-MM-DD HH:MM:SS - Display Order-Run details from kitchen eric_dev


TIMING RESULTS

  DKRecipe timing (test_sources_sinks), status = DKNodeStatus_completed_production 
   total recipe execution time|0:00:12.205
   Node (redshift_source_test), status = DKNodeStatus_completed_production, timing is||0:00:02.345
    (redshift_source_test) Data Source(redshift_datasource) timing is||0:00:01.312
     (redshift_source_test) Notebook elapsed time is|None
   Node (s3_source_test), status = DKNodeStatus_completed_production, timing is||0:00:03.922
    (s3_source_test) Data Source(s3_datasource) timing is||0:00:02.891
     (s3_source_test) Notebook elapsed time is|None
   Node (node_with_downstream_test), status = DKNodeStatus_completed_production, timing is||0:00:01.439
    (node_with_downstream_test) Data Source(redshift_datasource) timing is||0:00:00.411
     (node_with_downstream_test) Notebook elapsed time is|None
~ $ dk orderrun-info --order_run_id 802213bc-3662-11e9-9f7b-0ad19868a29a --test
Current context is: default
YYYY-MM-DD HH:MM:SS - Display Order-Run details from kitchen eric_dev

TEST RESULTS

Tests: Failed
        No Tests Failed

Tests: Warning
        No Tests Gave Warning Messages

Tests: Log
Step (node_with_downstream_test)
      1. log_time_minute_var_value (7 7)
Step (redshift_source_test)
      1. log_random_var_value (5 5)


Tests: Passed
Step (redshift_source_test)
      1. warning_if_random_var_value_is_identical_to_previous_run (5 not-equal-to 4 (previous-value of historic_calc_var)=4)
      2. warning_if_random_var_value_is_less_than_its_running_average (5 greater-than-equal-to 5 (running-average of historic_calc_avg_var)=5)
      3. warning_if_random_var_value_is_greater_than_5 (5 5 <= 5)
      4. warning_if_random_var_value_equals_3 (5 5 != 3)
      5. stop_on_error_if_static_query_result_does_not_equal_5 (5 query_result == 5)
Step (node_with_downstream_test)
      1. stop_on_error_if_downstream_test_of_count_files_pulled_does_not_equal_18 (18 count_files_pulled == 18)
Step (s3_source_test)
      1. stop_on_error_if_count_files_pulled_does_not_equal_18 (18 count_files_pulled == 18)

~ $ dk orderrun-info --help
Current context is: default

Current context is: default
Usage: dk orderrun-info [OPTIONS]

  Display information about an OrderRun in a Kitchen.

Options:
  -k, --kitchen TEXT         kitchen name
  -o, --order_id TEXT        Order ID
  -ori, --order_run_id TEXT  OrderRun ID to display
  -s, --summary              display run summary information
  -ns, --nodestatus          display node status info
  -l, --log                  display log info
  -t, --timing               display timing results
  -q, --test                 display test results
  --runstatus                display status of the run (single line)
  --disp_chronos_id          display the chronos id (single line)
  --disp_mesos_id            display the mesos id (single line)
  -at, --all_things          display all information
  --help                     Show this message and exit.

Logs

Each order run aggregates DataKitchen system logs with the logging information from each tool in the toolchain for the processing of any given recipe variation.

UI Logging of Order Run

Aggregated logs are available for every order run on the Order Run Details page. Users have various functions to parse the logged entries.

  1. On the Order Run Details page, click the Logs icon in the order run toolbar.
  2. In the Order Run Logs dialog, scroll to view entries or use various functions to narrow the results.
    • Filter & Search: Filter order run logs by thread and log level. Live results are filtered per inputted search expressions.
    • Resource Statistics: Use the RAM and Disk checkboxes to toggle the display of memory and disk space consumption per line.
      In some cases, users must be cognizant of the resources allocated to their orders.
    • Export: Click the Export Logs button to download a full log file. Logs are truncated at 2000 lines, so the export function provides a way to view all entries.

UI Logging of Node Execution

The Order Run Details page offers log data parsed for each node.

  1. On the Order Run Details page, click a node in the graph.
  2. In the Node Details sidebar, scroll to the Logs section.

CLI Logging

Logs for an order run may be accessed via the orderrun-info command with the --log option.

~ $ dk orderun-info --kitchen eric_dev -order_run_id 802213bc-3662-11e9-9f7b-0ad19868a29a --log
Current context is: default
YYYY-MM-DD HH:MM:SS - Display Order-Run details from kitchen eric_dev


LOG

Log Format:             datetime | record_type | thread_name | message

YYYY-MM-DD HH:MM:SS | INFO | MainThread | DKCommandServer: starting
....
~ $ dk orderrun-info --help
Current context is: default

Current context is: default
Usage: dk orderrun-info [OPTIONS]

  Display information about an OrderRun in a Kitchen.

Options:
  -k, --kitchen TEXT         kitchen name
  -o, --order_id TEXT        Order ID
  -ori, --order_run_id TEXT  OrderRun ID to display
  -s, --summary              display run summary information
  -ns, --nodestatus          display node status info
  -l, --log                  display log info
  -t, --timing               display timing results
  -q, --test                 display test results
  --runstatus                display status of the run (single line)
  --disp_chronos_id          display the chronos id (single line)
  --disp_mesos_id            display the mesos id (single line)
  -at, --all_things          display all information
  --help                     Show this message and exit.

Test Results

The platform displays test results from three different perspectives.

  • Results from tests executed in each order run
  • Results from tests executed with each node of an order run
  • Graphical results over time from all orders and order runs for a recipe variation within a specific kitchen.

Order Run Test Results in the UI

The test results for an individual order run are accessible via the Order Run Details page.

  1. On the Order Run Details page, click the Test Results icon in the order run toolbar.
  2. View results in the Test Results dialog.

Order Run Test Results via the CLI

Test results for an individual order run may be viewed via the orderrun-info command using the --test option.

~ $ dk orderun-info --kitchen eric_dev -order_run_id 802213bc-3662-11e9-9f7b-0ad19868a29a --test
Current context is: default
YYYY-MM-DD HH:MM:SS - Display Order-Run details from kitchen eric_dev

TEST RESULTS

Tests: Failed
        No Tests Failed

Tests: Warning
        No Tests Gave Warning Messages

Tests: Log
Step (node_with_downstream_test)
      1. log_time_minute_var_value (7 7)
Step (redshift_source_test)
      1. log_random_var_value (5 5)


Tests: Passed
Step (redshift_source_test)
      1. warning_if_random_var_value_is_identical_to_previous_run (5 not-equal-to 4 (previous-value of historic_calc_var)=4)
      2. warning_if_random_var_value_is_less_than_its_running_average (5 greater-than-equal-to 5 (running-average of historic_calc_avg_var)=5)
      3. warning_if_random_var_value_is_greater_than_5 (5 5 <= 5)
      4. warning_if_random_var_value_equals_3 (5 5 != 3)
      5. stop_on_error_if_static_query_result_does_not_equal_5 (5 query_result == 5)
Step (node_with_downstream_test)
      1. stop_on_error_if_downstream_test_of_count_files_pulled_does_not_equal_18 (18 count_files_pulled == 18)
Step (s3_source_test)
      1. stop_on_error_if_count_files_pulled_does_not_equal_18 (18 count_files_pulled == 18)
~ $ dk orderrun-info --help
Current context is: default

Current context is: default
Usage: dk orderrun-info [OPTIONS]

  Display information about an OrderRun in a Kitchen.

Options:
  -k, --kitchen TEXT         kitchen name
  -o, --order_id TEXT        Order ID
  -ori, --order_run_id TEXT  OrderRun ID to display
  -s, --summary              display run summary information
  -ns, --nodestatus          display node status info
  -l, --log                  display log info
  -t, --timing               display timing results
  -q, --test                 display test results
  --runstatus                display status of the run (single line)
  --disp_chronos_id          display the chronos id (single line)
  --disp_mesos_id            display the mesos id (single line)
  -at, --all_things          display all information
  --help                     Show this message and exit.

Node Execution Test Results in the UI

The Order Run Details page provides test data within the Node Details for each graph node.

  1. On the Order Run Details page, click a node in the graph.
  2. In the Node Details sidebar, view test data in the Tests section.

Order Test Results Over Time

The UI offers graphical views of test results over time and across multiple order runs and orders for a given kitchen-recipe-variation combination.

  1. Open the Order Metrics page in a new tab using one of two methods.
    • Click one of the recipe-variation links on the Orders page.
    • Click the Variation Metrics icon in the toolbar on the Order Run Details page.
  2. Hover over data points in the graphs to view details.
Access a longitudinal view of metadata across order runs from the Orders page.

Access a longitudinal view of metadata across order runs from the Orders page.

Hover to view details on the Order Metrics page.

Hover to view details on the Order Metrics page.

Timings

The platform displays process-timing information from three different perspectives.

  • Order run time
  • Node execution time
  • Graphical process times for a recipe variation within a specific kitchen.

Order Run Process Time in the UI

The timings for an individual order run are accessible via the Order Run Details page in graph and text formats.

  1. On the Order Run Details page, click the Timings Graph icon in the order run toolbar.
  2. Hover over bars in the graph to view details in the Timings dialog.
  3. For a text summary, click the Show Details icon in the order run toolbar and find the Timings field in the sidebar.

Order Run Timings via CLI

Timings for an individual order run may be viewed via the orderrun-info command with the --timing option.

~ $ dk orderun-info --kitchen eric_dev -order_run_id 802213bc-3662-11e9-9f7b-0ad19868a29a --timing
Current context is: default
YYYY-MM-DD HH:MM:SS - Display Order-Run details from kitchen eric_dev

TIMING RESULTS

  DKRecipe timing (test_sources_sinks), status = DKNodeStatus_completed_production 
   total recipe execution time|0:00:12.205
   Node (redshift_source_test), status = DKNodeStatus_completed_production, timing is||0:00:02.345
    (redshift_source_test) Data Source(redshift_datasource) timing is||0:00:01.312
     (redshift_source_test) Notebook elapsed time is|None
   Node (s3_source_test), status = DKNodeStatus_completed_production, timing is||0:00:03.922
    (s3_source_test) Data Source(s3_datasource) timing is||0:00:02.891
     (s3_source_test) Notebook elapsed time is|None
   Node (node_with_downstream_test), status = DKNodeStatus_completed_production, timing is||0:00:01.439
    (node_with_downstream_test) Data Source(redshift_datasource) timing is||0:00:00.411
     (node_with_downstream_test) Notebook elapsed time is|None
~ $ dk orderrun-info --help
Current context is: default

Current context is: default
Usage: dk orderrun-info [OPTIONS]

  Display information about an OrderRun in a Kitchen.

Options:
  -k, --kitchen TEXT         kitchen name
  -o, --order_id TEXT        Order ID
  -ori, --order_run_id TEXT  OrderRun ID to display
  -s, --summary              display run summary information
  -ns, --nodestatus          display node status info
  -l, --log                  display log info
  -t, --timing               display timing results
  -q, --test                 display test results
  --runstatus                display status of the run (single line)
  --disp_chronos_id          display the chronos id (single line)
  --disp_mesos_id            display the mesos id (single line)
  -at, --all_things          display all information
  --help                     Show this message and exit.

Node Execution Time in the UI

The Node Details sidebar includes the process time for the selected node.

  1. On the Order Run Details page, click a node in the graph.
  2. Find the Timing field in the Node Details sidebar.

Order Timings Over Time

The UI offers graphical views of process timings over time and across multiple order runs and orders for a given kitchen-recipe-variation combination. This data is helpful for identifying outlier runs for further investigation.

  1. Open the Order Metrics page in a new tab using one of two methods.
    • Click one of the recipe-variation links on the Orders page.
    • Click the Variation Metrics icon in the toolbar on the Order Run Details page.
  2. Click to open the Timings tab.
  3. Hover over bars in the Total Durations graph on the left to view details.
  4. Click one of the bars to select a specific order run, and view node process duration in the right-hand pane as a gantt or bar chart.
  5. Hover over bars in the Node Durations graphs on the right to view details.
The bar chart sorts by longest running node, regardless of graph location.

The bar chart sorts by longest running node, regardless of graph location.

The gantt chart sorts by graph structure.  This is useful is optimizing graph performance when using parallel nodes.

The gantt chart sorts by graph structure. This is useful is optimizing graph performance when using parallel nodes.

Updated about a month ago

Order Run Details


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.