Oms API GET upload log model - openmpp/openmpp.github.io GitHub Wiki

GET all model uploads log files from upload directory on the server.

This method only avaliable if server configured to create uploads for user.

This is a beta version and may change in the future.

Upload can be initiated through UI or by direct API call:

For each upload oms service does create a upload log file, for example:

  • RiskPaths.set.New-Data.ready.upload.log RiskPaths New-Data workset, upload completed and ready to use
  • RiskPaths.set.New-Data.progress.upload.log RiskPaths New-Data, upload in progress
  • RiskPaths.set.New-Data.error.upload.log RiskPaths New-Data, upload failed

Example of RiskPaths.set.New-Data.ready.upload.log:

2022-03-09 00:21:45.195 Upload of: RiskPaths.set.New-Data
------------------
Upload           : RiskPaths.set.New-Data.zip
Model Name       : RiskPaths
Model Version    : 3.0.0.0 2022-03-07 23:37:41.202
Model Digest     : d90e1e9a49a06d972ecf1d50e684c62b
Scenario Name    : New-Data
Folder           : RiskPaths.set.New-Data
------------------
2022-03-09 00:21:45.195 delete: RiskPaths.set.New-Data.ready.upload.log
2022-03-09 00:21:45.195 delete: RiskPaths.set.New-Data.error.upload.log
2022-03-09 00:21:45.195 delete: RiskPaths.set.New-Data
2022-03-09 00:21:45.195 dbcopy -m RiskPaths -dbcopy.IdOutputNames=false -dbcopy.SetName New-Data -dbcopy.To db -dbcopy.Zip -dbcopy.InputDir models\home\io\upload
2022-03-09 00:21:45.219 Model RiskPaths
2022-03-09 00:21:45.219 Unpack RiskPaths.set.New-Data.zip
2022-03-09 00:21:45.249 Workset New-Data into: 103 New-Data
2022-03-09 00:21:45.249   Parameters: 3
2022-03-09 00:21:45.277 Done.

As result of workset upload oms service does:

  • upload archive, for example: RiskPaths.set.New-Data.zip
  • extract workset .csv files with parameters into RiskPaths.set.New-Data folder
  • extract workset .json metadata file
  • create new or update existing New-Data workset in RiskPaths model database

Method:

GET /api/upload/log/model/:model

Arguments:

:model - (required) model digest or model name

Model can be identified by digest or by model name. It is recommended to use digest because it is uniquely identifies model. It is possible to use model name, which is more human readable than digest, but if there are multiple models with same name in database then result is undefined.

Call examples from browser:

http://localhost:4040/api/upload/log/model/RiskPaths
http://localhost:4040/api/upload/log/model/0f71660ba32bc002282c995e4552a14a

Return example:

[
  {
    "Status": "ready",
    "Kind": "upload",
    "ModelDigest": "d90e1e9a49a06d972ecf1d50e684c62b",
    "RunDigest": "",
    "WorksetName": "New-Data",
    "IsFolder": true,
    "Folder": "RiskPaths.set.New-Data",
    "FolderModTime": 1646803541985,
    "IsZip": true,
    "ZipFileName": "RiskPaths.set.New-Data.zip",
    "ZipModTime": 1646803541965,
    "ZipSize": 1690,
    "LogFileName": "RiskPaths.set.New-Data.ready.upload.log",
    "LogModTime": 1646803542034,
    "Lines": [
      "2022-03-09 00:25:41.964 Upload of: RiskPaths.set.New-Data ",
      "------------------ ",
      "Upload           : RiskPaths.set.New-Data.zip ",
      "Model Name       : RiskPaths ",
      "Model Version    : 3.0.0.0 2022-03-07 23:37:41.202 ",
      "Model Digest     : d90e1e9a49a06d972ecf1d50e684c62b ",
      "Scenario Name    : New-Data ",
      "Folder           : RiskPaths.set.New-Data ",
      "------------------ ",
      "2022-03-09 00:25:41.965 delete: RiskPaths.set.New-Data.ready.upload.log ",
      "2022-03-09 00:25:41.965 delete: RiskPaths.set.New-Data.error.upload.log ",
      "2022-03-09 00:25:41.965 delete: RiskPaths.set.New-Data ",
      "2022-03-09 00:25:41.966 dbcopy -m RiskPaths -dbcopy.IdOutputNames=false -dbcopy.SetName New-Data -dbcopy.To db -dbcopy.Zip -dbcopy.InputDir models\\home\\io\\upload ",
      "2022-03-09 00:25:41.983 Model RiskPaths  ",
      "2022-03-09 00:25:41.983 Unpack RiskPaths.set.New-Data.zip ",
      "2022-03-09 00:25:42.004 Workset New-Data into: 103 New-Data ",
      "2022-03-09 00:25:42.004   Parameters: 3 ",
      "2022-03-09 00:25:42.034 Done. ",
      ""
    ]
  },
  {
    "Status": "ready",
    "Kind": "upload",
    "ModelDigest": "d90e1e9a49a06d972ecf1d50e684c62b",
    "RunDigest": "",
    "WorksetName": "New_Scenario_of_union_duration",
    "IsFolder": true,
    "Folder": "RiskPaths.set.New_Scenario_of_union_duration",
    "FolderModTime": 1646804668330,
    "IsZip": true,
    "ZipFileName": "RiskPaths.set.New_Scenario_of_union_duration.zip",
    "ZipModTime": 1646804668308,
    "ZipSize": 2460,
    "LogFileName": "RiskPaths.set.New_Scenario_of_union_duration.ready.upload.log",
    "LogModTime": 1646804668378,
    "Lines": [
      "2022-03-09 00:44:28.308 Upload of: RiskPaths.set.New_Scenario_of_union_duration ",
      "------------------ ",
      "Upload           : RiskPaths.set.New_Scenario_of_union_duration.zip ",
      "Model Name       : RiskPaths ",
      "Model Version    : 3.0.0.0 2022-03-07 23:37:41.202 ",
      "Model Digest     : d90e1e9a49a06d972ecf1d50e684c62b ",
      "Scenario Name    : New_Scenario_of_union_duration ",
      "Folder           : RiskPaths.set.New_Scenario_of_union_duration ",
      "------------------ ",
      "2022-03-09 00:44:28.308 delete: RiskPaths.set.New_Scenario_of_union_duration.ready.upload.log ",
      "2022-03-09 00:44:28.308 delete: RiskPaths.set.New_Scenario_of_union_duration.error.upload.log ",
      "2022-03-09 00:44:28.308 delete: RiskPaths.set.New_Scenario_of_union_duration ",
      "2022-03-09 00:44:28.308 dbcopy -m RiskPaths -dbcopy.IdOutputNames=false -dbcopy.SetName New_Scenario_of_union_duration -dbcopy.To db -dbcopy.Zip -dbcopy.InputDir models\\home\\io\\upload ",
      "2022-03-09 00:44:28.328 Model RiskPaths  ",
      "2022-03-09 00:44:28.328 Unpack RiskPaths.set.New_Scenario_of_union_duration.zip ",
      "2022-03-09 00:44:28.341 Workset New_Scenario_of_union_duration into: 104 New_Scenario_of_union_duration ",
      "2022-03-09 00:44:28.341   Parameters: 3 ",
      "2022-03-09 00:44:28.378 Done. ",
      ""
    ]
  }
]
⚠️ **GitHub.com Fallback** ⚠️