openc3-cosmos-tool-docs 5.15.2 → 5.16.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. data/tools/staticdocs/404.html +3 -3
  3. data/tools/staticdocs/assets/css/styles.a9c55efa.css +1 -0
  4. data/tools/staticdocs/assets/js/22b3ac48.299bf4d6.js +1 -0
  5. data/tools/staticdocs/assets/js/411898ad.f103f64b.js +1 -0
  6. data/tools/staticdocs/assets/js/6831b732.bbf2813b.js +1 -0
  7. data/tools/staticdocs/assets/js/{aa6b6c1b.6281c551.js → aa6b6c1b.a13cb467.js} +1 -1
  8. data/tools/staticdocs/assets/js/b6d70f94.20a403bf.js +1 -0
  9. data/tools/staticdocs/assets/js/f15615f1.534d50e4.js +1 -0
  10. data/tools/staticdocs/assets/js/{main.bb0229c9.js → main.9ed8621d.js} +2 -2
  11. data/tools/staticdocs/assets/js/{runtime~main.fb053c0b.js → runtime~main.c6bb8b5e.js} +1 -1
  12. data/tools/staticdocs/docs/configuration/command.html +3 -3
  13. data/tools/staticdocs/docs/configuration/format.html +3 -3
  14. data/tools/staticdocs/docs/configuration/interfaces.html +3 -3
  15. data/tools/staticdocs/docs/configuration/plugins.html +7 -4
  16. data/tools/staticdocs/docs/configuration/protocols.html +14 -6
  17. data/tools/staticdocs/docs/configuration/ssl-tls.html +3 -3
  18. data/tools/staticdocs/docs/configuration/table.html +3 -3
  19. data/tools/staticdocs/docs/configuration/target.html +3 -3
  20. data/tools/staticdocs/docs/configuration/telemetry-screens.html +3 -3
  21. data/tools/staticdocs/docs/configuration/telemetry.html +7 -4
  22. data/tools/staticdocs/docs/configuration.html +3 -3
  23. data/tools/staticdocs/docs/development/curl.html +90 -4
  24. data/tools/staticdocs/docs/development/developing.html +3 -3
  25. data/tools/staticdocs/docs/development/host-install.html +3 -3
  26. data/tools/staticdocs/docs/development/json-api.html +3 -3
  27. data/tools/staticdocs/docs/development/log-structure.html +3 -3
  28. data/tools/staticdocs/docs/development/roadmap.html +3 -3
  29. data/tools/staticdocs/docs/development/streaming-api.html +3 -3
  30. data/tools/staticdocs/docs/development/testing.html +3 -3
  31. data/tools/staticdocs/docs/development.html +3 -3
  32. data/tools/staticdocs/docs/getting-started/generators.html +3 -3
  33. data/tools/staticdocs/docs/getting-started/gettingstarted.html +3 -3
  34. data/tools/staticdocs/docs/getting-started/installation.html +3 -3
  35. data/tools/staticdocs/docs/getting-started/key_concepts.html +3 -3
  36. data/tools/staticdocs/docs/getting-started/podman.html +3 -3
  37. data/tools/staticdocs/docs/getting-started/requirements.html +3 -3
  38. data/tools/staticdocs/docs/getting-started/upgrading.html +3 -3
  39. data/tools/staticdocs/docs/getting-started.html +3 -3
  40. data/tools/staticdocs/docs/guides/bridges.html +3 -3
  41. data/tools/staticdocs/docs/guides/cfs.html +3 -3
  42. data/tools/staticdocs/docs/guides/custom-widgets.html +3 -3
  43. data/tools/staticdocs/docs/guides/little-endian-bitfields.html +3 -3
  44. data/tools/staticdocs/docs/guides/local-mode.html +3 -3
  45. data/tools/staticdocs/docs/guides/logging.html +3 -3
  46. data/tools/staticdocs/docs/guides/monitoring.html +3 -3
  47. data/tools/staticdocs/docs/guides/performance.html +3 -3
  48. data/tools/staticdocs/docs/guides/raspberrypi.html +14 -13
  49. data/tools/staticdocs/docs/guides/script-writing.html +3 -3
  50. data/tools/staticdocs/docs/guides/scripting-api.html +45 -37
  51. data/tools/staticdocs/docs/guides.html +3 -3
  52. data/tools/staticdocs/docs/meta/contributing.html +3 -3
  53. data/tools/staticdocs/docs/meta/licenses.html +3 -3
  54. data/tools/staticdocs/docs/meta/philosophy.html +3 -3
  55. data/tools/staticdocs/docs/meta/xtce.html +3 -3
  56. data/tools/staticdocs/docs/meta.html +3 -3
  57. data/tools/staticdocs/docs/privacy.html +3 -3
  58. data/tools/staticdocs/docs/tools/autonomic.html +3 -3
  59. data/tools/staticdocs/docs/tools/bucket-explorer.html +3 -3
  60. data/tools/staticdocs/docs/tools/calendar.html +3 -3
  61. data/tools/staticdocs/docs/tools/cmd-sender.html +3 -3
  62. data/tools/staticdocs/docs/tools/cmd-tlm-server.html +3 -3
  63. data/tools/staticdocs/docs/tools/data-extractor.html +3 -3
  64. data/tools/staticdocs/docs/tools/data-viewer.html +3 -3
  65. data/tools/staticdocs/docs/tools/handbooks.html +3 -3
  66. data/tools/staticdocs/docs/tools/limits-monitor.html +3 -3
  67. data/tools/staticdocs/docs/tools/packet-viewer.html +3 -3
  68. data/tools/staticdocs/docs/tools/script-runner.html +3 -3
  69. data/tools/staticdocs/docs/tools/table-manager.html +3 -3
  70. data/tools/staticdocs/docs/tools/tlm-grapher.html +3 -3
  71. data/tools/staticdocs/docs/tools/tlm-viewer.html +3 -3
  72. data/tools/staticdocs/docs/tools.html +3 -3
  73. data/tools/staticdocs/docs.html +3 -3
  74. data/tools/staticdocs/index.html +3 -3
  75. data/tools/staticdocs/lunr-index-1714800805056.json +1 -0
  76. data/tools/staticdocs/lunr-index.json +1 -1
  77. data/tools/staticdocs/markdown-page.html +3 -3
  78. data/tools/staticdocs/search-doc-1714800805056.json +1 -0
  79. data/tools/staticdocs/search-doc.json +1 -1
  80. metadata +14 -14
  81. data/tools/staticdocs/assets/css/styles.a4426211.css +0 -1
  82. data/tools/staticdocs/assets/js/22b3ac48.77516494.js +0 -1
  83. data/tools/staticdocs/assets/js/411898ad.e29e2db3.js +0 -1
  84. data/tools/staticdocs/assets/js/6831b732.a77e4761.js +0 -1
  85. data/tools/staticdocs/assets/js/b6d70f94.66d95cb7.js +0 -1
  86. data/tools/staticdocs/assets/js/f15615f1.0b19ae07.js +0 -1
  87. data/tools/staticdocs/lunr-index-1711942080429.json +0 -1
  88. data/tools/staticdocs/search-doc-1711942080429.json +0 -1
  89. /data/tools/staticdocs/assets/js/{main.bb0229c9.js.LICENSE.txt → main.9ed8621d.js.LICENSE.txt} +0 -0
@@ -3,9 +3,9 @@
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
5
  <meta name="generator" content="Docusaurus v3.1.0">
6
- <title data-rh="true">Logging | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/logging"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Logging | OpenC3 Docs"><meta data-rh="true" name="description" content="The COSMOS Bucket Explorer tool provides a way to browse the COSMOS bucket storage backend whether you are running locally or in a cloud environment. Browse to http2900/tools/bucketexplorer and you should see the list of buckets at the top:"><meta data-rh="true" property="og:description" content="The COSMOS Bucket Explorer tool provides a way to browse the COSMOS bucket storage backend whether you are running locally or in a cloud environment. Browse to http2900/tools/bucketexplorer and you should see the list of buckets at the top:"><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/logging"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/logging" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/logging" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a4426211.css">
7
- <script src="/tools/staticdocs/assets/js/runtime~main.fb053c0b.js" defer="defer"></script>
8
- <script src="/tools/staticdocs/assets/js/main.bb0229c9.js" defer="defer"></script>
6
+ <title data-rh="true">Logging | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/logging"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Logging | OpenC3 Docs"><meta data-rh="true" name="description" content="The COSMOS Bucket Explorer tool provides a way to browse the COSMOS bucket storage backend whether you are running locally or in a cloud environment. Browse to http2900/tools/bucketexplorer and you should see the list of buckets at the top:"><meta data-rh="true" property="og:description" content="The COSMOS Bucket Explorer tool provides a way to browse the COSMOS bucket storage backend whether you are running locally or in a cloud environment. Browse to http2900/tools/bucketexplorer and you should see the list of buckets at the top:"><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/logging"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/logging" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/logging" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a9c55efa.css">
7
+ <script src="/tools/staticdocs/assets/js/runtime~main.c6bb8b5e.js" defer="defer"></script>
8
+ <script src="/tools/staticdocs/assets/js/main.9ed8621d.js" defer="defer"></script>
9
9
  </head>
10
10
  <body class="navigation-with-keyboard">
11
11
  <script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return localStorage.getItem("theme")}catch(t){}}();t(null!==e?e:"dark")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_G6ar" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/tools/staticdocs/"><div class="navbar__logo"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/tools/staticdocs/docs">Documentation</a><a href="https://openc3.com/enterprise/" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="navbar__items navbar__items--right"><div class="navbarSearchContainer_bmvg"><div class="navbar__search"><span aria-label="expand searchbar" role="button" class="search-icon" tabindex="0"></span><input id="search_input_react" type="search" placeholder="Loading..." aria-label="Search" class="navbar__search-input search-bar" disabled=""></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_UyTV"><div class="docsWrapper_XLvK"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type="button"></button><div class="docRoot_HciC"><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class="sidebarViewport_N8x0"><div class="sidebar_vJCc"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs">Introduction</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/getting-started">Getting Started</a><button aria-label="Expand sidebar category &#x27;Getting Started&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/configuration">Configuration</a><button aria-label="Expand sidebar category &#x27;Configuration&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/tools">Tools</a><button aria-label="Expand sidebar category &#x27;Tools&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--active" aria-expanded="true" href="/tools/staticdocs/docs/guides">Guides</a><button aria-label="Collapse sidebar category &#x27;Guides&#x27;" type="button" class="clean-btn menu__caret"></button></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/bridges">Bridges</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/cfs">COSMOS and NASA cFS</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/custom-widgets">Custom Widgets</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/little-endian-bitfields">Little Endian Bitfields</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/local-mode">Local Mode</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/tools/staticdocs/docs/guides/logging">Logging</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/monitoring">Monitoring</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/performance">Performance</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/raspberrypi">Raspberry Pi</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/script-writing">Script Writing Guide</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/scripting-api">Scripting API Guide</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/development">Development</a><button aria-label="Expand sidebar category &#x27;Development&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/meta">Meta</a><button aria-label="Expand sidebar category &#x27;Meta&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs/privacy">OpenC3, Inc. Privacy Policy</a></li></ul></nav></div></div></aside><main class="docMainContainer_namt"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_YAwJ"><div class="docItemContainer_Rv5Z"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label="Breadcrumbs"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/tools/staticdocs/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_JFrk"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item"><a class="breadcrumbs__link" itemprop="item" href="/tools/staticdocs/docs/guides"><span itemprop="name">Guides</span></a><meta itemprop="position" content="1"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">Logging</span><meta itemprop="position" content="2"></li></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type="button" class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Logging</h1></header><p>The COSMOS <a href="/tools/staticdocs/docs/tools/bucket-explorer">Bucket Explorer</a> tool provides a way to browse the COSMOS bucket storage backend whether you are running locally or in a cloud environment. Browse to <a href="http://localhost:2900/tools/bucketexplorer">http://localhost:2900/tools/bucketexplorer</a> and you should see the list of buckets at the top:</p>
@@ -3,9 +3,9 @@
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
5
  <meta name="generator" content="Docusaurus v3.1.0">
6
- <title data-rh="true">Monitoring | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/monitoring"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Monitoring | OpenC3 Docs"><meta data-rh="true" name="description" content="Monitoring and observability"><meta data-rh="true" property="og:description" content="Monitoring and observability"><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/monitoring"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/monitoring" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/monitoring" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a4426211.css">
7
- <script src="/tools/staticdocs/assets/js/runtime~main.fb053c0b.js" defer="defer"></script>
8
- <script src="/tools/staticdocs/assets/js/main.bb0229c9.js" defer="defer"></script>
6
+ <title data-rh="true">Monitoring | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/monitoring"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Monitoring | OpenC3 Docs"><meta data-rh="true" name="description" content="Monitoring and observability"><meta data-rh="true" property="og:description" content="Monitoring and observability"><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/monitoring"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/monitoring" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/monitoring" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a9c55efa.css">
7
+ <script src="/tools/staticdocs/assets/js/runtime~main.c6bb8b5e.js" defer="defer"></script>
8
+ <script src="/tools/staticdocs/assets/js/main.9ed8621d.js" defer="defer"></script>
9
9
  </head>
10
10
  <body class="navigation-with-keyboard">
11
11
  <script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return localStorage.getItem("theme")}catch(t){}}();t(null!==e?e:"dark")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_G6ar" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/tools/staticdocs/"><div class="navbar__logo"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/tools/staticdocs/docs">Documentation</a><a href="https://openc3.com/enterprise/" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="navbar__items navbar__items--right"><div class="navbarSearchContainer_bmvg"><div class="navbar__search"><span aria-label="expand searchbar" role="button" class="search-icon" tabindex="0"></span><input id="search_input_react" type="search" placeholder="Loading..." aria-label="Search" class="navbar__search-input search-bar" disabled=""></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_UyTV"><div class="docsWrapper_XLvK"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type="button"></button><div class="docRoot_HciC"><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class="sidebarViewport_N8x0"><div class="sidebar_vJCc"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs">Introduction</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/getting-started">Getting Started</a><button aria-label="Expand sidebar category &#x27;Getting Started&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/configuration">Configuration</a><button aria-label="Expand sidebar category &#x27;Configuration&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/tools">Tools</a><button aria-label="Expand sidebar category &#x27;Tools&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--active" aria-expanded="true" href="/tools/staticdocs/docs/guides">Guides</a><button aria-label="Collapse sidebar category &#x27;Guides&#x27;" type="button" class="clean-btn menu__caret"></button></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/bridges">Bridges</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/cfs">COSMOS and NASA cFS</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/custom-widgets">Custom Widgets</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/little-endian-bitfields">Little Endian Bitfields</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/local-mode">Local Mode</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/logging">Logging</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/tools/staticdocs/docs/guides/monitoring">Monitoring</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/performance">Performance</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/raspberrypi">Raspberry Pi</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/script-writing">Script Writing Guide</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/scripting-api">Scripting API Guide</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/development">Development</a><button aria-label="Expand sidebar category &#x27;Development&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/meta">Meta</a><button aria-label="Expand sidebar category &#x27;Meta&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs/privacy">OpenC3, Inc. Privacy Policy</a></li></ul></nav></div></div></aside><main class="docMainContainer_namt"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_YAwJ"><div class="docItemContainer_Rv5Z"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label="Breadcrumbs"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/tools/staticdocs/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_JFrk"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item"><a class="breadcrumbs__link" itemprop="item" href="/tools/staticdocs/docs/guides"><span itemprop="name">Guides</span></a><meta itemprop="position" content="1"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">Monitoring</span><meta itemprop="position" content="2"></li></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type="button" class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Monitoring</h1></header><h3 id="monitoring-and-observability">Monitoring and observability</h3>
@@ -3,9 +3,9 @@
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
5
  <meta name="generator" content="Docusaurus v3.1.0">
6
- <title data-rh="true">Performance | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/performance"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Performance | OpenC3 Docs"><meta data-rh="true" name="description" content="The COSMOS architecture was created with scalability in mind. Our goal is to support an unlimited number of connections and use cloud technologies to scale. Only COSMOS Enterprise Edition supports Kubernetes and the various cloud platforms which allow this level of scalability. While true scalability is only achieved in COSMOS Enterprise, both Open Source and Enterprise have various levels of observability and configuration settings which can affect performance."><meta data-rh="true" property="og:description" content="The COSMOS architecture was created with scalability in mind. Our goal is to support an unlimited number of connections and use cloud technologies to scale. Only COSMOS Enterprise Edition supports Kubernetes and the various cloud platforms which allow this level of scalability. While true scalability is only achieved in COSMOS Enterprise, both Open Source and Enterprise have various levels of observability and configuration settings which can affect performance."><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/performance"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/performance" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/performance" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a4426211.css">
7
- <script src="/tools/staticdocs/assets/js/runtime~main.fb053c0b.js" defer="defer"></script>
8
- <script src="/tools/staticdocs/assets/js/main.bb0229c9.js" defer="defer"></script>
6
+ <title data-rh="true">Performance | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/performance"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Performance | OpenC3 Docs"><meta data-rh="true" name="description" content="The COSMOS architecture was created with scalability in mind. Our goal is to support an unlimited number of connections and use cloud technologies to scale. Only COSMOS Enterprise Edition supports Kubernetes and the various cloud platforms which allow this level of scalability. While true scalability is only achieved in COSMOS Enterprise, both Open Source and Enterprise have various levels of observability and configuration settings which can affect performance."><meta data-rh="true" property="og:description" content="The COSMOS architecture was created with scalability in mind. Our goal is to support an unlimited number of connections and use cloud technologies to scale. Only COSMOS Enterprise Edition supports Kubernetes and the various cloud platforms which allow this level of scalability. While true scalability is only achieved in COSMOS Enterprise, both Open Source and Enterprise have various levels of observability and configuration settings which can affect performance."><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/performance"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/performance" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/performance" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a9c55efa.css">
7
+ <script src="/tools/staticdocs/assets/js/runtime~main.c6bb8b5e.js" defer="defer"></script>
8
+ <script src="/tools/staticdocs/assets/js/main.9ed8621d.js" defer="defer"></script>
9
9
  </head>
10
10
  <body class="navigation-with-keyboard">
11
11
  <script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return localStorage.getItem("theme")}catch(t){}}();t(null!==e?e:"dark")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_G6ar" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/tools/staticdocs/"><div class="navbar__logo"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/tools/staticdocs/docs">Documentation</a><a href="https://openc3.com/enterprise/" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="navbar__items navbar__items--right"><div class="navbarSearchContainer_bmvg"><div class="navbar__search"><span aria-label="expand searchbar" role="button" class="search-icon" tabindex="0"></span><input id="search_input_react" type="search" placeholder="Loading..." aria-label="Search" class="navbar__search-input search-bar" disabled=""></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_UyTV"><div class="docsWrapper_XLvK"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type="button"></button><div class="docRoot_HciC"><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class="sidebarViewport_N8x0"><div class="sidebar_vJCc"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs">Introduction</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/getting-started">Getting Started</a><button aria-label="Expand sidebar category &#x27;Getting Started&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/configuration">Configuration</a><button aria-label="Expand sidebar category &#x27;Configuration&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/tools">Tools</a><button aria-label="Expand sidebar category &#x27;Tools&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--active" aria-expanded="true" href="/tools/staticdocs/docs/guides">Guides</a><button aria-label="Collapse sidebar category &#x27;Guides&#x27;" type="button" class="clean-btn menu__caret"></button></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/bridges">Bridges</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/cfs">COSMOS and NASA cFS</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/custom-widgets">Custom Widgets</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/little-endian-bitfields">Little Endian Bitfields</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/local-mode">Local Mode</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/logging">Logging</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/monitoring">Monitoring</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/tools/staticdocs/docs/guides/performance">Performance</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/raspberrypi">Raspberry Pi</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/script-writing">Script Writing Guide</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/scripting-api">Scripting API Guide</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/development">Development</a><button aria-label="Expand sidebar category &#x27;Development&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/meta">Meta</a><button aria-label="Expand sidebar category &#x27;Meta&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs/privacy">OpenC3, Inc. Privacy Policy</a></li></ul></nav></div></div></aside><main class="docMainContainer_namt"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_YAwJ"><div class="docItemContainer_Rv5Z"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label="Breadcrumbs"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/tools/staticdocs/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_JFrk"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item"><a class="breadcrumbs__link" itemprop="item" href="/tools/staticdocs/docs/guides"><span itemprop="name">Guides</span></a><meta itemprop="position" content="1"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">Performance</span><meta itemprop="position" content="2"></li></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type="button" class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><p>The COSMOS architecture was created with scalability in mind. Our goal is to support an unlimited number of connections and use cloud technologies to scale. Only <a href="https://openc3.com/enterprise">COSMOS Enterprise Edition</a> supports Kubernetes and the various cloud platforms which allow this level of scalability. While true scalability is only achieved in COSMOS Enterprise, both Open Source and Enterprise have various levels of observability and configuration settings which can affect performance.</p>
@@ -3,9 +3,9 @@
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
5
  <meta name="generator" content="Docusaurus v3.1.0">
6
- <title data-rh="true">Raspberry Pi | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/raspberrypi"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Raspberry Pi | OpenC3 Docs"><meta data-rh="true" name="description" content="COSMOS Running on Raspberry Pi 4"><meta data-rh="true" property="og:description" content="COSMOS Running on Raspberry Pi 4"><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/raspberrypi"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/raspberrypi" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/raspberrypi" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a4426211.css">
7
- <script src="/tools/staticdocs/assets/js/runtime~main.fb053c0b.js" defer="defer"></script>
8
- <script src="/tools/staticdocs/assets/js/main.bb0229c9.js" defer="defer"></script>
6
+ <title data-rh="true">Raspberry Pi | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/raspberrypi"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Raspberry Pi | OpenC3 Docs"><meta data-rh="true" name="description" content="COSMOS Running on Raspberry Pi 4"><meta data-rh="true" property="og:description" content="COSMOS Running on Raspberry Pi 4"><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/raspberrypi"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/raspberrypi" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/raspberrypi" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a9c55efa.css">
7
+ <script src="/tools/staticdocs/assets/js/runtime~main.c6bb8b5e.js" defer="defer"></script>
8
+ <script src="/tools/staticdocs/assets/js/main.9ed8621d.js" defer="defer"></script>
9
9
  </head>
10
10
  <body class="navigation-with-keyboard">
11
11
  <script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return localStorage.getItem("theme")}catch(t){}}();t(null!==e?e:"dark")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_G6ar" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/tools/staticdocs/"><div class="navbar__logo"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/tools/staticdocs/docs">Documentation</a><a href="https://openc3.com/enterprise/" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="navbar__items navbar__items--right"><div class="navbarSearchContainer_bmvg"><div class="navbar__search"><span aria-label="expand searchbar" role="button" class="search-icon" tabindex="0"></span><input id="search_input_react" type="search" placeholder="Loading..." aria-label="Search" class="navbar__search-input search-bar" disabled=""></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_UyTV"><div class="docsWrapper_XLvK"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type="button"></button><div class="docRoot_HciC"><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class="sidebarViewport_N8x0"><div class="sidebar_vJCc"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs">Introduction</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/getting-started">Getting Started</a><button aria-label="Expand sidebar category &#x27;Getting Started&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/configuration">Configuration</a><button aria-label="Expand sidebar category &#x27;Configuration&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/tools">Tools</a><button aria-label="Expand sidebar category &#x27;Tools&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--active" aria-expanded="true" href="/tools/staticdocs/docs/guides">Guides</a><button aria-label="Collapse sidebar category &#x27;Guides&#x27;" type="button" class="clean-btn menu__caret"></button></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/bridges">Bridges</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/cfs">COSMOS and NASA cFS</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/custom-widgets">Custom Widgets</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/little-endian-bitfields">Little Endian Bitfields</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/local-mode">Local Mode</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/logging">Logging</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/monitoring">Monitoring</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/performance">Performance</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/tools/staticdocs/docs/guides/raspberrypi">Raspberry Pi</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/script-writing">Script Writing Guide</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/scripting-api">Scripting API Guide</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/development">Development</a><button aria-label="Expand sidebar category &#x27;Development&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/meta">Meta</a><button aria-label="Expand sidebar category &#x27;Meta&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs/privacy">OpenC3, Inc. Privacy Policy</a></li></ul></nav></div></div></aside><main class="docMainContainer_namt"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_YAwJ"><div class="docItemContainer_Rv5Z"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label="Breadcrumbs"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/tools/staticdocs/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_JFrk"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item"><a class="breadcrumbs__link" itemprop="item" href="/tools/staticdocs/docs/guides"><span itemprop="name">Guides</span></a><meta itemprop="position" content="1"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">Raspberry Pi</span><meta itemprop="position" content="2"></li></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type="button" class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Raspberry Pi</h1></header><h3 id="cosmos-running-on-raspberry-pi-4">COSMOS Running on Raspberry Pi 4</h3>
@@ -26,21 +26,24 @@
26
26
  <ol>
27
27
  <li>Insert the SD Card into your computer (Note this process will erase all data on the SD card!)</li>
28
28
  <li>Open the Raspberry Pi Imager App</li>
29
+ <li>Click the &quot;Choose Device&quot; Button</li>
30
+ <li>Pick Your Raspberry Pi Model</li>
29
31
  <li>Click the &quot;Choose OS&quot; Button</li>
30
32
  <li>Select &quot;Raspberry Pi OS (other)&quot;</li>
31
33
  <li>Select &quot;Raspberry Pi OS Lite (64-bit)&quot;</li>
32
34
  <li>Click the &quot;Choose Storage&quot; Button</li>
33
35
  <li>Select Your SD Card</li>
34
- <li>Click the Gear Icon</li>
36
+ <li>Click Edit Settings</li>
35
37
  <li>If prompted if you would like to prefill the Wifi information, select OK</li>
36
- <li>Click all the checkboxes, except for &quot;Enable Telemetry&quot;</li>
37
38
  <li>Set the hostname to: cosmos.local</li>
38
- <li>You can either use Password auth, or public-key only if your computer is already setup for passwordless SSH</li>
39
- <li>Set the username and password. The default username is pi, you should also set a password to make the system secure</li>
39
+ <li>Set the username and password. The default username is your username, you should also set a password to make the system secure</li>
40
40
  <li>Fill in your Wifi info, and set the country appropriately (ie. US)</li>
41
41
  <li>Set the correct time zone</li>
42
+ <li>Goto the Services Tab and Enable SSH</li>
43
+ <li>You can either use Password auth, or public-key only if your computer is already setup for passwordless SSH</li>
44
+ <li>Goto the Options tab and make sure &quot;Enable Telemetry&quot; is not checked</li>
42
45
  <li>Click &quot;Save&quot; when everything is filled out</li>
43
- <li>Click the &quot;Write&quot; button, Yes to Are You Sure, and Wait for it to complete</li>
46
+ <li>Click &quot;Yes&quot; to apply OS Customization Settings, Yes to Are You Sure, and Wait for it to complete</li>
44
47
  </ol>
45
48
  </li>
46
49
  <li>
@@ -58,7 +61,7 @@
58
61
  <li>
59
62
  <p>Open a terminal window and use ssh to connect to your Pi</p>
60
63
  <ol>
61
- <li>On Mac / Linux: ssh <a href="mailto:pi@cosmos.local">pi@cosmos.local</a></li>
64
+ <li>On Mac / Linux: ssh <a href="mailto:yourusername@cosmos.local">yourusername@cosmos.local</a></li>
62
65
  <li>On Windows, use Putty to connect. You will probably have to install Bonjour for Windows for .local addresses to work as well.</li>
63
66
  </ol>
64
67
  </li>
@@ -77,16 +80,14 @@
77
80
  sudo sh get-docker.sh
78
81
  sudo usermod -aG docker $USER
79
82
  newgrp docker
80
- sudo apt-get install libffi-dev libssl-dev python3-dev python3 python3-pip -y
81
- sudo pip3 install docker-compose
82
83
  git clone https://github.com/OpenC3/cosmos-project.git cosmos
83
84
  cd cosmos
84
- # Edit compose.yaml and remove 127.0.0.1 from the ports section of the openc3-traefik service
85
+ # Edit compose.yaml and remove 127.0.0.1: from the ports section of the openc3-traefik service
85
86
  ./openc3.sh run
86
87
  </code></pre>
87
88
  <ol>
88
89
  <li>
89
- <p>After about 2 minutes, open a web browswer on your computer, and goto: <a href="http://cosmos.local:2900">http://cosmos.local:2900</a></p>
90
+ <p>After about 2 minutes, open a web browser on your computer, and goto: <a href="http://cosmos.local:2900">http://cosmos.local:2900</a></p>
90
91
  </li>
91
92
  <li>
92
93
  <p>Congratulations! You now have COSMOS running on a Raspberry Pi!</p>
@@ -3,9 +3,9 @@
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
5
  <meta name="generator" content="Docusaurus v3.1.0">
6
- <title data-rh="true">Script Writing Guide | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Script Writing Guide | OpenC3 Docs"><meta data-rh="true" name="description" content="Introduction"><meta data-rh="true" property="og:description" content="Introduction"><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a4426211.css">
7
- <script src="/tools/staticdocs/assets/js/runtime~main.fb053c0b.js" defer="defer"></script>
8
- <script src="/tools/staticdocs/assets/js/main.bb0229c9.js" defer="defer"></script>
6
+ <title data-rh="true">Script Writing Guide | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Script Writing Guide | OpenC3 Docs"><meta data-rh="true" name="description" content="Introduction"><meta data-rh="true" property="og:description" content="Introduction"><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/script-writing" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a9c55efa.css">
7
+ <script src="/tools/staticdocs/assets/js/runtime~main.c6bb8b5e.js" defer="defer"></script>
8
+ <script src="/tools/staticdocs/assets/js/main.9ed8621d.js" defer="defer"></script>
9
9
  </head>
10
10
  <body class="navigation-with-keyboard">
11
11
  <script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return localStorage.getItem("theme")}catch(t){}}();t(null!==e?e:"dark")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_G6ar" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/tools/staticdocs/"><div class="navbar__logo"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/tools/staticdocs/docs">Documentation</a><a href="https://openc3.com/enterprise/" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="navbar__items navbar__items--right"><div class="navbarSearchContainer_bmvg"><div class="navbar__search"><span aria-label="expand searchbar" role="button" class="search-icon" tabindex="0"></span><input id="search_input_react" type="search" placeholder="Loading..." aria-label="Search" class="navbar__search-input search-bar" disabled=""></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_UyTV"><div class="docsWrapper_XLvK"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type="button"></button><div class="docRoot_HciC"><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class="sidebarViewport_N8x0"><div class="sidebar_vJCc"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs">Introduction</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/getting-started">Getting Started</a><button aria-label="Expand sidebar category &#x27;Getting Started&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/configuration">Configuration</a><button aria-label="Expand sidebar category &#x27;Configuration&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/tools">Tools</a><button aria-label="Expand sidebar category &#x27;Tools&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--active" aria-expanded="true" href="/tools/staticdocs/docs/guides">Guides</a><button aria-label="Collapse sidebar category &#x27;Guides&#x27;" type="button" class="clean-btn menu__caret"></button></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/bridges">Bridges</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/cfs">COSMOS and NASA cFS</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/custom-widgets">Custom Widgets</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/little-endian-bitfields">Little Endian Bitfields</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/local-mode">Local Mode</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/logging">Logging</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/monitoring">Monitoring</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/performance">Performance</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/raspberrypi">Raspberry Pi</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/tools/staticdocs/docs/guides/script-writing">Script Writing Guide</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/scripting-api">Scripting API Guide</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/development">Development</a><button aria-label="Expand sidebar category &#x27;Development&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/meta">Meta</a><button aria-label="Expand sidebar category &#x27;Meta&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs/privacy">OpenC3, Inc. Privacy Policy</a></li></ul></nav></div></div></aside><main class="docMainContainer_namt"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_YAwJ"><div class="docItemContainer_Rv5Z"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label="Breadcrumbs"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/tools/staticdocs/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_JFrk"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item"><a class="breadcrumbs__link" itemprop="item" href="/tools/staticdocs/docs/guides"><span itemprop="name">Guides</span></a><meta itemprop="position" content="1"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">Script Writing Guide</span><meta itemprop="position" content="2"></li></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type="button" class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Script Writing Guide</h1></header><h2 id="introduction">Introduction</h2>
@@ -3,9 +3,9 @@
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
5
  <meta name="generator" content="Docusaurus v3.1.0">
6
- <title data-rh="true">Scripting API Guide | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Scripting API Guide | OpenC3 Docs"><meta data-rh="true" name="description" content="This document provides the information necessary to write test procedures using the COSMOS scripting API. Scripting in COSMOS is designed to be simple and intuitive. The code completion ability for command and telemetry mnemonics makes Script Runner the ideal place to write your procedures, however any text editor will do. If there is functionality that you don&#x27;t see here or perhaps an easier syntax for doing something, please submit a ticket."><meta data-rh="true" property="og:description" content="This document provides the information necessary to write test procedures using the COSMOS scripting API. Scripting in COSMOS is designed to be simple and intuitive. The code completion ability for command and telemetry mnemonics makes Script Runner the ideal place to write your procedures, however any text editor will do. If there is functionality that you don&#x27;t see here or perhaps an easier syntax for doing something, please submit a ticket."><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a4426211.css">
7
- <script src="/tools/staticdocs/assets/js/runtime~main.fb053c0b.js" defer="defer"></script>
8
- <script src="/tools/staticdocs/assets/js/main.bb0229c9.js" defer="defer"></script>
6
+ <title data-rh="true">Scripting API Guide | OpenC3 Docs</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Scripting API Guide | OpenC3 Docs"><meta data-rh="true" name="description" content="This document provides the information necessary to write test procedures using the COSMOS scripting API. Scripting in COSMOS is designed to be simple and intuitive. The code completion ability for command and telemetry mnemonics makes Script Runner the ideal place to write your procedures, however any text editor will do. If there is functionality that you don&#x27;t see here or perhaps an easier syntax for doing something, please submit a ticket."><meta data-rh="true" property="og:description" content="This document provides the information necessary to write test procedures using the COSMOS scripting API. Scripting in COSMOS is designed to be simple and intuitive. The code completion ability for command and telemetry mnemonics makes Script Runner the ideal place to write your procedures, however any text editor will do. If there is functionality that you don&#x27;t see here or perhaps an easier syntax for doing something, please submit a ticket."><link data-rh="true" rel="icon" href="/tools/staticdocs/img/favicon.png"><link data-rh="true" rel="canonical" href="https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.openc3.com/tools/staticdocs/docs/guides/scripting-api" hreflang="x-default"><link rel="stylesheet" href="/tools/staticdocs/assets/css/styles.a9c55efa.css">
7
+ <script src="/tools/staticdocs/assets/js/runtime~main.c6bb8b5e.js" defer="defer"></script>
8
+ <script src="/tools/staticdocs/assets/js/main.9ed8621d.js" defer="defer"></script>
9
9
  </head>
10
10
  <body class="navigation-with-keyboard">
11
11
  <script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return localStorage.getItem("theme")}catch(t){}}();t(null!==e?e:"dark")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_G6ar" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/tools/staticdocs/"><div class="navbar__logo"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src="/tools/staticdocs/img/logo.svg" alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/tools/staticdocs/docs">Documentation</a><a href="https://openc3.com/enterprise/" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="navbar__items navbar__items--right"><div class="navbarSearchContainer_bmvg"><div class="navbar__search"><span aria-label="expand searchbar" role="button" class="search-icon" tabindex="0"></span><input id="search_input_react" type="search" placeholder="Loading..." aria-label="Search" class="navbar__search-input search-bar" disabled=""></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_UyTV"><div class="docsWrapper_XLvK"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type="button"></button><div class="docRoot_HciC"><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class="sidebarViewport_N8x0"><div class="sidebar_vJCc"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs">Introduction</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/getting-started">Getting Started</a><button aria-label="Expand sidebar category &#x27;Getting Started&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/configuration">Configuration</a><button aria-label="Expand sidebar category &#x27;Configuration&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/tools">Tools</a><button aria-label="Expand sidebar category &#x27;Tools&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--active" aria-expanded="true" href="/tools/staticdocs/docs/guides">Guides</a><button aria-label="Collapse sidebar category &#x27;Guides&#x27;" type="button" class="clean-btn menu__caret"></button></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/bridges">Bridges</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/cfs">COSMOS and NASA cFS</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/custom-widgets">Custom Widgets</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/little-endian-bitfields">Little Endian Bitfields</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/local-mode">Local Mode</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/logging">Logging</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/monitoring">Monitoring</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/performance">Performance</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/raspberrypi">Raspberry Pi</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/tools/staticdocs/docs/guides/script-writing">Script Writing Guide</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/tools/staticdocs/docs/guides/scripting-api">Scripting API Guide</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/development">Development</a><button aria-label="Expand sidebar category &#x27;Development&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/tools/staticdocs/docs/meta">Meta</a><button aria-label="Expand sidebar category &#x27;Meta&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/tools/staticdocs/docs/privacy">OpenC3, Inc. Privacy Policy</a></li></ul></nav></div></div></aside><main class="docMainContainer_namt"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_YAwJ"><div class="docItemContainer_Rv5Z"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label="Breadcrumbs"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/tools/staticdocs/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_JFrk"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item"><a class="breadcrumbs__link" itemprop="item" href="/tools/staticdocs/docs/guides"><span itemprop="name">Guides</span></a><meta itemprop="position" content="1"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">Scripting API Guide</span><meta itemprop="position" content="2"></li></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type="button" class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Scripting API Guide</h1></header><p>This document provides the information necessary to write test procedures using the COSMOS scripting API. Scripting in COSMOS is designed to be simple and intuitive. The code completion ability for command and telemetry mnemonics makes Script Runner the ideal place to write your procedures, however any text editor will do. If there is functionality that you don&#x27;t see here or perhaps an easier syntax for doing something, please submit a ticket.</p>
@@ -911,103 +911,111 @@ get_packet_derived_items(&quot;&lt;Target&gt;&quot;, &quot;&lt;Packet&gt;&quot;)
911
911
  <h3 id="wait">wait</h3>
912
912
  <p>Pauses the script for a configurable amount of time (minimum 10ms) or until a converted telemetry item meets given criteria. It supports three different syntaxes as shown. If no parameters are given then an infinite wait occurs until the user presses Go. Note that on a timeout, wait does not stop the script, usually wait_check is a better choice.</p>
913
913
  <p>Ruby / Python Syntax:</p>
914
- <pre><code class="language-ruby">wait()
915
- wait(&lt;Time&gt;)
914
+ <pre><code class="language-ruby">elapsed = wait() #=&gt; Returns the actual time waited
915
+ elapsed = wait(&lt;Time&gt;) #=&gt; Returns the actual time waited
916
916
  </code></pre>
917
917
  <table><thead><tr><th>Parameter</th><th>Description</th></tr></thead><tbody><tr><td>Time</td><td>Time in Seconds to delay for.</td></tr></tbody></table>
918
918
  <p>Ruby / Python Syntax:</p>
919
- <pre><code class="language-ruby">wait(&quot;&lt;Target Name&gt; &lt;Packet Name&gt; &lt;Item Name&gt; &lt;Comparison&gt;&quot;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, type, quiet)
919
+ <pre><code class="language-ruby"># Returns true or false based on the whether the expression is true or false
920
+ success = wait(&quot;&lt;Target Name&gt; &lt;Packet Name&gt; &lt;Item Name&gt; &lt;Comparison&gt;&quot;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, type, quiet)
920
921
  </code></pre>
921
922
  <table><thead><tr><th>Parameter</th><th>Description</th></tr></thead><tbody><tr><td>Target Name</td><td>Name of the target of the telemetry item.</td></tr><tr><td>Packet Name</td><td>Name of the telemetry packet of the telemetry item.</td></tr><tr><td>Item Name</td><td>Name of the telemetry item.</td></tr><tr><td>Comparison</td><td>A comparison to perform against the telemetry item.</td></tr><tr><td>Timeout</td><td>Timeout in seconds. Script will proceed if the wait statement times out waiting for the comparison to be true.</td></tr><tr><td>Polling Rate</td><td>How often the comparison is evaluated in seconds. Defaults to 0.25 if not specified.</td></tr><tr><td>type</td><td>Named parameter specifying the type. RAW, CONVERTED (default), FORMATTED, WITH_UNITS (Ruby symbol, Python string).</td></tr><tr><td>quiet</td><td>Named parameter indicating whether to log the result. Defaults to true.</td></tr></tbody></table>
922
923
  <p>Ruby Example:</p>
923
- <pre><code class="language-ruby">wait
924
- wait 5
925
- wait(&quot;INST HEALTH_STATUS COLLECTS == 3&quot;, 10)
926
- wait(&quot;INST HEALTH_STATUS COLLECTS == 3&quot;, 10, type: :RAW, quiet: false)
924
+ <pre><code class="language-ruby">elapsed = wait
925
+ elapsed = wait 5
926
+ success = wait(&quot;INST HEALTH_STATUS COLLECTS == 3&quot;, 10)
927
+ success = wait(&quot;INST HEALTH_STATUS COLLECTS == 3&quot;, 10, type: :RAW, quiet: false)
927
928
  </code></pre>
928
929
  <p>Python Example:</p>
929
- <pre><code class="language-python">wait()
930
- wait(5)
931
- wait(&quot;INST HEALTH_STATUS COLLECTS == 3&quot;, 10)
932
- wait(&quot;INST HEALTH_STATUS COLLECTS == 3&quot;, 10, type=&#x27;RAW&#x27;, quiet=False)
930
+ <pre><code class="language-python">elapsed = wait()
931
+ elapsed = wait(5)
932
+ success = wait(&quot;INST HEALTH_STATUS COLLECTS == 3&quot;, 10)
933
+ success = wait(&quot;INST HEALTH_STATUS COLLECTS == 3&quot;, 10, type=&#x27;RAW&#x27;, quiet=False)
933
934
  </code></pre>
934
935
  <h3 id="wait_tolerance">wait_tolerance</h3>
935
936
  <p>Pauses the script for a configurable amount of time or until a converted telemetry item meets equals an expected value within a tolerance. Note that on a timeout, wait_tolerance does not stop the script, usually wait_check_tolerance is a better choice.</p>
936
937
  <p>Ruby Python Syntax:</p>
937
- <pre><code class="language-ruby">wait_tolerance(&quot;&lt;Target Name&gt; &lt;Packet Name&gt; &lt;Item Name&gt;&quot;, &lt;Expected Value&gt;, &lt;Tolerance&gt;, &lt;Timeout&gt;, &lt;Polling Rate (optional), type, quiet&gt;)
938
+ <pre><code class="language-ruby"># Returns true or false based on the whether the expression is true or false
939
+ success = wait_tolerance(&quot;&lt;Target Name&gt; &lt;Packet Name&gt; &lt;Item Name&gt;&quot;, &lt;Expected Value&gt;, &lt;Tolerance&gt;, &lt;Timeout&gt;, &lt;Polling Rate (optional), type, quiet&gt;)
938
940
  </code></pre>
939
941
  <table><thead><tr><th>Parameter</th><th>Description</th></tr></thead><tbody><tr><td>Target Name</td><td>Name of the target of the telemetry item.</td></tr><tr><td>Packet Name</td><td>Name of the telemetry packet of the telemetry item.</td></tr><tr><td>Item Name</td><td>Name of the telemetry item.</td></tr><tr><td>Expected Value</td><td>Expected value of the telemetry item.</td></tr><tr><td>Tolerance</td><td>± Tolerance on the expected value.</td></tr><tr><td>Timeout</td><td>Timeout in seconds. Script will proceed if the wait statement times out waiting for the comparison to be true.</td></tr><tr><td>Polling Rate</td><td>How often the comparison is evaluated in seconds. Defaults to 0.25 if not specified.</td></tr><tr><td>type</td><td>Named parameter specifying the type. RAW, CONVERTED (default), FORMATTED, WITH_UNITS (Ruby symbol, Python string).</td></tr><tr><td>quiet</td><td>Named parameter indicating whether to log the result. Defaults to true.</td></tr></tbody></table>
940
942
  <p>Ruby Examples:</p>
941
- <pre><code class="language-ruby">wait_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10)
942
- wait_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10, type: :RAW, quiet: true)
943
+ <pre><code class="language-ruby">success = wait_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10)
944
+ success = wait_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10, type: :RAW, quiet: true)
943
945
  </code></pre>
944
946
  <p>Python Examples:</p>
945
- <pre><code class="language-python">wait_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10)
946
- wait_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10, type=&#x27;RAW&#x27;, quiet=True)
947
+ <pre><code class="language-python">success = wait_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10)
948
+ success = wait_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10, type=&#x27;RAW&#x27;, quiet=True)
947
949
  </code></pre>
948
950
  <h3 id="wait_expression">wait_expression</h3>
949
951
  <p>Pauses the script until an expression is evaluated to be true or a timeout occurs. If a timeout occurs the script will continue. This method can be used to perform more complicated comparisons than using wait as shown in the example. Note that on a timeout, wait_expression does not stop the script, usually <a href="#waitcheckexpression">wait_check_expression</a> is a better choice.</p>
950
952
  <p>Syntax:</p>
951
- <pre><code class="language-ruby">wait_expression(&quot;&lt;Expression&gt;&quot;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, quiet)
953
+ <pre><code class="language-ruby"># Returns true or false based on the whether the expression is true or false
954
+ success = wait_expression(&quot;&lt;Expression&gt;&quot;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, quiet)
952
955
  </code></pre>
953
956
  <table><thead><tr><th>Parameter</th><th>Description</th></tr></thead><tbody><tr><td>Expression</td><td>A ruby expression to evaluate.</td></tr><tr><td>Timeout</td><td>Timeout in seconds. Script will proceed if the wait statement times out waiting for the comparison to be true.</td></tr><tr><td>Polling Rate</td><td>How often the comparison is evaluated in seconds. Defaults to 0.25 if not specified.</td></tr><tr><td>quiet</td><td>Named parameter indicating whether to log the result. Defaults to true.</td></tr></tbody></table>
954
957
  <p>Ruby / Python Example:</p>
955
- <pre><code class="language-ruby">wait_expression(&quot;tlm(&#x27;INST HEALTH_STATUS COLLECTS&#x27;) &gt; 5 and tlm(&#x27;INST HEALTH_STATUS TEMP1&#x27;) &gt; 25.0&quot;, 10)
958
+ <pre><code class="language-ruby">success = wait_expression(&quot;tlm(&#x27;INST HEALTH_STATUS COLLECTS&#x27;) &gt; 5 and tlm(&#x27;INST HEALTH_STATUS TEMP1&#x27;) &gt; 25.0&quot;, 10)
956
959
  </code></pre>
957
960
  <h3 id="wait_packet">wait_packet</h3>
958
961
  <p>Pauses the script until a certain number of packets have been received. If a timeout occurs the script will continue. Note that on a timeout, wait_packet does not stop the script, usually wait_check_packet is a better choice.</p>
959
962
  <p>Ruby / Python Syntax:</p>
960
- <pre><code class="language-ruby">wait_packet(&quot;&lt;Target&gt;&quot;, &quot;&lt;Packet&gt;&quot;, &lt;Num Packets&gt;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, quiet)
963
+ <pre><code class="language-ruby"># Returns true or false based on the whether the packet was received
964
+ success = wait_packet(&quot;&lt;Target&gt;&quot;, &quot;&lt;Packet&gt;&quot;, &lt;Num Packets&gt;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, quiet)
961
965
  </code></pre>
962
966
  <table><thead><tr><th>Parameter</th><th>Description</th></tr></thead><tbody><tr><td>Target</td><td>The target name</td></tr><tr><td>Packet</td><td>The packet name</td></tr><tr><td>Num Packets</td><td>The number of packets to receive</td></tr><tr><td>Timeout</td><td>Timeout in seconds.</td></tr><tr><td>Polling Rate</td><td>How often the comparison is evaluated in seconds. Defaults to 0.25 if not specified.</td></tr><tr><td>quiet</td><td>Named parameter indicating whether to log the result. Defaults to true.</td></tr></tbody></table>
963
967
  <p>Ruby / Python Example:</p>
964
- <pre><code class="language-ruby">wait_packet(&#x27;INST&#x27;, &#x27;HEALTH_STATUS&#x27;, 5, 10) # Wait for 5 INST HEALTH_STATUS packets over 10s
968
+ <pre><code class="language-ruby">success = wait_packet(&#x27;INST&#x27;, &#x27;HEALTH_STATUS&#x27;, 5, 10) # Wait for 5 INST HEALTH_STATUS packets over 10s
965
969
  </code></pre>
966
970
  <h3 id="wait_check">wait_check</h3>
967
971
  <p>Combines the wait and check keywords into one. This pauses the script until the converted value of a telemetry item meets given criteria or times out. On a timeout the script stops.</p>
968
972
  <p>Ruby / Python Syntax:</p>
969
- <pre><code class="language-ruby">wait_check(&quot;&lt;Target Name&gt; &lt;Packet Name&gt; &lt;Item Name&gt; &lt;Comparison&gt;&quot;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, type)
973
+ <pre><code class="language-ruby"># Returns the amount of time elapsed waiting for the expression
974
+ elapsed = wait_check(&quot;&lt;Target Name&gt; &lt;Packet Name&gt; &lt;Item Name&gt; &lt;Comparison&gt;&quot;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, type)
970
975
  </code></pre>
971
976
  <table><thead><tr><th>Parameter</th><th>Description</th></tr></thead><tbody><tr><td>Target Name</td><td>Name of the target of the telemetry item.</td></tr><tr><td>Packet Name</td><td>Name of the telemetry packet of the telemetry item.</td></tr><tr><td>Item Name</td><td>Name of the telemetry item.</td></tr><tr><td>Comparison</td><td>A comparison to perform against the telemetry item.</td></tr><tr><td>Timeout</td><td>Timeout in seconds. Script will stop if the wait statement times out waiting for the comparison to be true.</td></tr><tr><td>Polling Rate</td><td>How often the comparison is evaluated in seconds. Defaults to 0.25 if not specified.</td></tr><tr><td>type</td><td>Named parameter specifying the type. RAW, CONVERTED (default), FORMATTED, WITH_UNITS (Ruby symbol, Python string).</td></tr></tbody></table>
972
977
  <p>Ruby Example:</p>
973
- <pre><code class="language-ruby">wait_check(&quot;INST HEALTH_STATUS COLLECTS &gt; 5&quot;, 10)
974
- wait_check(&quot;INST HEALTH_STATUS COLLECTS &gt; 5&quot;, 10, type: :RAW)
978
+ <pre><code class="language-ruby">elapsed = wait_check(&quot;INST HEALTH_STATUS COLLECTS &gt; 5&quot;, 10)
979
+ elapsed = wait_check(&quot;INST HEALTH_STATUS COLLECTS &gt; 5&quot;, 10, type: :RAW)
975
980
  </code></pre>
976
981
  <p>Python Example:</p>
977
- <pre><code class="language-python">wait_check(&quot;INST HEALTH_STATUS COLLECTS &gt; 5&quot;, 10)
978
- wait_check(&quot;INST HEALTH_STATUS COLLECTS &gt; 5&quot;, 10, type=&#x27;RAW&#x27;)
982
+ <pre><code class="language-python">elapsed = wait_check(&quot;INST HEALTH_STATUS COLLECTS &gt; 5&quot;, 10)
983
+ elapsed = wait_check(&quot;INST HEALTH_STATUS COLLECTS &gt; 5&quot;, 10, type=&#x27;RAW&#x27;)
979
984
  </code></pre>
980
985
  <h3 id="wait_check_tolerance">wait_check_tolerance</h3>
981
986
  <p>Pauses the script for a configurable amount of time or until a converted telemetry item equals an expected value within a tolerance. On a timeout the script stops.</p>
982
987
  <p>Ruby / Python Syntax:</p>
983
- <pre><code class="language-ruby">wait_check_tolerance(&quot;&lt;Target Name&gt; &lt;Packet Name&gt; &lt;Item Name&gt;&quot;, &lt;Expected Value&gt;, &lt;Tolerance&gt;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, type)
988
+ <pre><code class="language-ruby"># Returns the amount of time elapsed waiting for the expression
989
+ elapsed = wait_check_tolerance(&quot;&lt;Target Name&gt; &lt;Packet Name&gt; &lt;Item Name&gt;&quot;, &lt;Expected Value&gt;, &lt;Tolerance&gt;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, type)
984
990
  </code></pre>
985
991
  <table><thead><tr><th>Parameter</th><th>Description</th></tr></thead><tbody><tr><td>Target Name</td><td>Name of the target of the telemetry item.</td></tr><tr><td>Packet Name</td><td>Name of the telemetry packet of the telemetry item.</td></tr><tr><td>Item Name</td><td>Name of the telemetry item.</td></tr><tr><td>Expected Value</td><td>Expected value of the telemetry item.</td></tr><tr><td>Tolerance</td><td>± Tolerance on the expected value.</td></tr><tr><td>Timeout</td><td>Timeout in seconds. Script will stop if the wait statement times out waiting for the comparison to be true.</td></tr><tr><td>Polling Rate</td><td>How often the comparison is evaluated in seconds. Defaults to 0.25 if not specified.</td></tr><tr><td>type</td><td>Named parameter specifying the type. RAW, CONVERTED (default), FORMATTED, WITH_UNITS (Ruby symbol, Python string).</td></tr></tbody></table>
986
992
  <p>Ruby Example:</p>
987
- <pre><code class="language-ruby">wait_check_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10)
988
- wait_check_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10, type: :RAW)
993
+ <pre><code class="language-ruby">elapsed = wait_check_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10)
994
+ elapsed = wait_check_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10, type: :RAW)
989
995
  </code></pre>
990
996
  <p>Python Example:</p>
991
- <pre><code class="language-python">wait_check_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10)
992
- wait_check_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10, type=&#x27;RAW&#x27;)
997
+ <pre><code class="language-python">elapsed = wait_check_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10)
998
+ elapsed = wait_check_tolerance(&quot;INST HEALTH_STATUS COLLECTS&quot;, 10.0, 5.0, 10, type=&#x27;RAW&#x27;)
993
999
  </code></pre>
994
1000
  <h3 id="wait_check_expression">wait_check_expression</h3>
995
1001
  <p>Pauses the script until an expression is evaluated to be true or a timeout occurs. If a timeout occurs the script will stop. This method can be used to perform more complicated comparisons than using wait as shown in the example. Also see the syntax notes for <a href="#checkexpression">check_expression</a>.</p>
996
1002
  <p>Ruby / Python Syntax:</p>
997
- <pre><code class="language-ruby">wait_check_expression(&quot;&lt;Expression&gt;&quot;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;)
1003
+ <pre><code class="language-ruby"># Returns the amount of time elapsed waiting for the expression
1004
+ elapsed = wait_check_expression(&quot;&lt;Expression&gt;&quot;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;)
998
1005
  </code></pre>
999
1006
  <table><thead><tr><th>Parameter</th><th>Description</th></tr></thead><tbody><tr><td>Expression</td><td>A ruby expression to evaluate.</td></tr><tr><td>Timeout</td><td>Timeout in seconds. Script will stop if the wait statement times out waiting for the comparison to be true.</td></tr><tr><td>Polling Rate</td><td>How often the comparison is evaluated in seconds. Defaults to 0.25 if not specified.</td></tr></tbody></table>
1000
1007
  <p>Ruby / Python Example:</p>
1001
- <pre><code class="language-ruby">wait_check_expression(&quot;tlm(&#x27;INST HEALTH_STATUS COLLECTS&#x27;) &gt; 5 and tlm(&#x27;INST HEALTH_STATUS TEMP1&#x27;) &gt; 25.0&quot;, 10)
1008
+ <pre><code class="language-ruby">elapsed = wait_check_expression(&quot;tlm(&#x27;INST HEALTH_STATUS COLLECTS&#x27;) &gt; 5 and tlm(&#x27;INST HEALTH_STATUS TEMP1&#x27;) &gt; 25.0&quot;, 10)
1002
1009
  </code></pre>
1003
1010
  <h3 id="wait_check_packet">wait_check_packet</h3>
1004
1011
  <p>Pauses the script until a certain number of packets have been received. If a timeout occurs the script will stop.</p>
1005
1012
  <p>Ruby / Python Syntax:</p>
1006
- <pre><code class="language-ruby">wait_check_packet(&quot;&lt;Target&gt;&quot;, &quot;&lt;Packet&gt;&quot;, &lt;Num Packets&gt;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, quiet)
1013
+ <pre><code class="language-ruby"># Returns the amount of time elapsed waiting for the packets
1014
+ elapsed = wait_check_packet(&quot;&lt;Target&gt;&quot;, &quot;&lt;Packet&gt;&quot;, &lt;Num Packets&gt;, &lt;Timeout&gt;, &lt;Polling Rate (optional)&gt;, quiet)
1007
1015
  </code></pre>
1008
1016
  <table><thead><tr><th>Parameter</th><th>Description</th></tr></thead><tbody><tr><td>Target</td><td>The target name</td></tr><tr><td>Packet</td><td>The packet name</td></tr><tr><td>Num Packets</td><td>The number of packets to receive</td></tr><tr><td>Timeout</td><td>Timeout in seconds. Script will stop if the wait statement times out waiting specified number of packets.</td></tr><tr><td>Polling Rate</td><td>How often the comparison is evaluated in seconds. Defaults to 0.25 if not specified.</td></tr><tr><td>quiet</td><td>Named parameter indicating whether to log the result. Defaults to true.</td></tr></tbody></table>
1009
1017
  <p>Ruby / Python Example:</p>
1010
- <pre><code class="language-ruby">wait_check_packet(&#x27;INST&#x27;, &#x27;HEALTH_STATUS&#x27;, 5, 10) # Wait for 5 INST HEALTH_STATUS packets over 10s
1018
+ <pre><code class="language-ruby">elapsed = wait_check_packet(&#x27;INST&#x27;, &#x27;HEALTH_STATUS&#x27;, 5, 10) # Wait for 5 INST HEALTH_STATUS packets over 10s
1011
1019
  </code></pre>
1012
1020
  <h2 id="limits">Limits</h2>
1013
1021
  <p>These methods deal with handling telemetry limits.</p>