Skip to main content

XINA Struct Export

This page is a Work In Progress

The XINA Struct Export utility processes archive files to produce data products for XINA's Export Tasks. There are 2 suppported archive file formats: xbin and xpf. If the archive file is in the xpf format, processing is delegated to a mission specific tool. See the Struct Extract Interface that describes the interface the tool must implement.

Arguments

Name Req Description Default
task ✓ task ID
conf ✓ JSON configuration file path
temp ✓ temp directory path for storing temporary files during execution
import ✓ import directory path (for file outputs)
log ✓ log file path
out ✓ [TBD] the ouptut directory path
post ✓ post directory path (for post-import outputs)
cancellation Path to the cancellation file for detecting cancel requests
extract Path to the struct_extract app. Only used if the archive format is xpf.
pkt_models [TBD] models to use packet time by default
plot ✓ Path to app that generates plot PDFs
python ✓ Path to the Python executable used by the plot app
host tunnel host "localhost"
port tunnel port 41746

JSON Configuration

Name Type Req Description Default
model utf8text ✓ path of model to export data from
label utf8text The text that will be used to name the files and final zip file. The format will be like 2024_06_12_00_00_00_2024_06_12_00_20_00_profile_label
profile utf8text The name of the Profile if the export was generated from one
start instant(us) ✓ Start time of data to export
end instant(us) ✓ End time of data to export
idsutf8text✓CSV range list of mn_ids e.g. "1,2-10,100" or ext_id formatted string e.g. "@[1,4-8,12,100-200]sci;@[2,3]raw"
ueid UUID Event UUID of interval if the export was requested for an interval. The event's start and end time will be used instead of start and end.
auto_confs list(struct_auto_conf) [TBD if required]
plot_conf struct_plot_conf The plot configuration used to generate the plot PDF. See plot format. One mnemonic per plot, one plot per page, sorted by mn_id in ascending order.
data_conf struct_data_conf ✓ See struct_data_conf
disable_filter boolean If true, does not apply the filters defined in data_conf. false
copy boolean [TBD REMOVE]
multi boolean [TBD REMOVE] Has extract process all archives at once. This was added for performance reasons since loading the mnem def is slow.

Example conf:

Note: The plot_conf was truncated for brevity

  "model": "oci.fm",
  "profile": "OPS_FLT_OCI_SDS",
  "label": "test",
  "start": 1718150400000000,
  "end": 1718151600000000,
  "ueid": null,
  "copy": true,
  "auto_confs": [
    {
      "users": [
        "johndoe",
        "alice"
      ],
      "mine": false,
      "daily": true
    }
  ],
  "plot_conf": {
    "trend_series": [
      "avg"
    ],
    "pages": [
      {
        "plots": [
          {
            "title": "OCI Pri Power (15A)",
            "mnemonics": [
              "PSE.OM1.OCI_PRI_CURR"
            ]
          },
          {
            "series": [
              {
                "mnemonic": "oci.dau.ddc.FPGA.CcdOpMode",
                "plot_options": {
                  "color": "k"
                }
              }
            ]
          }
        ]
      }
    ]
  },
  "data_conf": {
    "limit": false,
    "ids": "@[42316,42318-42322,43255,44243,45140,45187-45210,45233-45236,45238,45240,45241,45245,45247,45248,45259,45260,45265-45268,45270,45272,45273,45277,45279,45280,45291,45292,45442,45444,45446,45448,45450,45452,45454,45460,45462,45472,45538,45540,45542,45544,45546,45548,45550,45556,45558,45568,51908,51910,64097,64109,64111,64113,64115,66333,66341,66349,66357,66365,66373,66381,67536,67537,69019,69024-69026,69031,69032,69729,77534,77570,77696]sci",
    "dis": false,
    "fill": false,
    "columns": {
      "ts_utc_iso": true
    },
    "join": true,
    "pkt": true
  }
}

Operation

Extract data from archive files to produce Export Task products:

  • Full resolution mnemonic data with a configurable format
  • Mnemonic Statistics
  • Configurable Plots of data
  • Limit Report
  • Events