|
| 1 | +0.15.3-a1 -- 2022-10-27 |
| 2 | +----------------------- |
| 3 | + |
| 4 | + |
| 5 | +🚀 Features |
| 6 | +~~~~~~~~~~~~~ |
| 7 | + |
| 8 | +EdgeConnect Telemetry Demo Example |
| 9 | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 10 | + |
| 11 | +✨ **Added new code example!**: A fully automated telemetry demo showing |
| 12 | +the potential for visualizing EdgeConnect metrics in tools external to |
| 13 | +Orchestrator. |
| 14 | + |
| 15 | +Easily deployed via docker-compose with minimal inputs required, the |
| 16 | +demo connects to Orchestrator to discover appliances and then worker |
| 17 | +nodes directly retrieve data and metrics from EdgeConnect appliances. |
| 18 | +The data is written to a database and then visualized in Grafana |
| 19 | +dashboards. |
| 20 | + |
| 21 | +Detailed documentation in the Examples section :ref:`ec_telemetry_demo` |
| 22 | + |
| 23 | +As with all examples, the code referenced is available from the GitHub |
| 24 | +repository within the `examples <https://github.com/SPOpenSource/edgeconnect-python/tree/main/examples>`_ |
| 25 | +folder. |
| 26 | + |
| 27 | +Clone the repository and download the examples with: |
| 28 | + |
| 29 | + .. code:: bash |
| 30 | +
|
| 31 | + $ git clone https://github.com/SPOpenSource/edgeconnect-python.git |
| 32 | +
|
| 33 | +Init Requests Timeout for Orchestrator & EdgeConnect |
| 34 | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 35 | + |
| 36 | +Introduced user-defined timeout settings for requests to Orchestrator |
| 37 | +and EdgeConnect. Previous behavior had a fixed timeout setting of |
| 38 | +120 seconds for all requests. |
| 39 | + |
| 40 | +New init variable for Orchestrator and EdgeConnect classes ``timeout`` |
| 41 | +as a tuple to define initial connect and read timeout values |
| 42 | +for underlying requests. Defaults to conservative values of 9.15s for |
| 43 | +connect and 12s for read. This allows users to turndown timeout timers |
| 44 | +more applicable to their environment rather than having to wait |
| 45 | +for connection to fail on previous default 120s timeout value inherited |
| 46 | +from the Requests library. |
| 47 | + |
| 48 | +.. code:: python |
| 49 | +
|
| 50 | + # Instantiate Orchestrator with shorter timeout values of |
| 51 | + # 3.05 seconds for connect and 10 seconds for read |
| 52 | + orch = Orchestrator( |
| 53 | + url="192.0.2.100", |
| 54 | + api_key="abc123", |
| 55 | + timeout=(3.05,10) |
| 56 | + ) |
| 57 | +
|
| 58 | +Updated the following Orchestrator functions from Swagger: |
| 59 | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 60 | + |
| 61 | +- New parameters for :func:`~pyedgeconnect.Orchestrator.get_appliance_flows` |
| 62 | + |
| 63 | +Added additional query parameters supporting custom time range filters |
| 64 | +for retrieving flows from appliances. ``active_uptime_start`` and |
| 65 | +``active_uptime_end`` to support active flows, along with |
| 66 | +``term_uptime_start`` and ``term_uptime_end`` to support ended flows. |
| 67 | + |
| 68 | +- Updated return data for :func:`~pyedgeconnect.Orchestrator.create_preconfig` |
| 69 | + |
| 70 | +Previously function only returned boolean for success/failure. Now on |
| 71 | +success returns dictionary including assigned ID of the created |
| 72 | +preconfig, e.g., ``{ "id": 118 }`` |
| 73 | + |
| 74 | +Added the following EdgeConnect functions from Swagger: |
| 75 | +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 76 | + |
| 77 | +from .ecos._cpu |
| 78 | + - :func:`~pyedgeconnect.EdgeConnect.get_appliance_cpu` |
| 79 | + |
| 80 | +from .ecos._system_info |
| 81 | + - :func:`~pyedgeconnect.EdgeConnect.get_appliance_system_info` |
| 82 | + |
| 83 | +📚 Documentation |
| 84 | +~~~~~~~~~~~~~~~~~~ |
| 85 | + |
| 86 | +Added additional CSS for Sphinx docs to fit Aruba palette in a dark theme |
| 87 | + |
| 88 | + |
| 89 | +🐛 Bug Fixes |
| 90 | +~~~~~~~~~~~~~~ |
| 91 | + |
| 92 | +📚 Docs Typo fixes: |
| 93 | +^^^^^^^^^^^^^^^^^^^ |
| 94 | + |
| 95 | +- Example docs linking back to GitHub repository had ``https://https://`` |
| 96 | +- Docstring typo - :func:`~pyedgeconnect.Orchestrator.get_appliance_deployment` |
| 97 | + docstring reponse used key of "licence" vs. "license" |
| 98 | +- Docstring typo - :func:`~pyedgeconnect.Orchestrator.get_appliance_inbound_shaper` |
| 99 | + docstring response was copy/paste from DNS proxy. Replaced with |
| 100 | + accurate inbound shaper response contents. |
| 101 | +- Docstring typo - :func:`~pyedgeconnect.Orchestrator.get_appliance_flows` |
| 102 | + docstring parameter typo of "protocl" vs. "protocol" |
| 103 | +- Docstring typo - :func:`~pyedgeconnect.Orchestrator.get_audit_log` |
| 104 | + docstring parameter typo of return parameter type "(`boolean`)" vs. |
| 105 | + "(`bool`)" |
| 106 | + |
| 107 | +🐛 Known Issues |
| 108 | +~~~~~~~~~~~~~~~ |
| 109 | + |
| 110 | +.. warning:: |
| 111 | + |
| 112 | + The following two functions for the _ip_objects submodule exprience |
| 113 | + errors at this time. These function do work in the Orchestrator UI: |
| 114 | + :func:`~pyedgeconnect.Orchestrator.bulk_upload_address_group` and |
| 115 | + :func:`~pyedgeconnect.Orchestrator.bulk_upload_service_group` |
0 commit comments