linode / manager

Akamai's Cloud Manager is an open-source, single-page application designed as the primary frontend interface for interacting with the Linode API. It is entrusted by hundreds of thousands of customers with the management of their Linode services.
https://cloud.linode.com
Apache License 2.0
691 stars 361 forks source link

upcoming: [DI-21811] - Post processing of missing timestamp data across dimensions in ACLP charts #11225

Closed venkymano-akamai closed 6 days ago

venkymano-akamai commented 1 week ago

Description ๐Ÿ“

When the charts of ACLP for DBaaS has multiple dimensions some of the timestamps are missing across dimensions and charts are plotted wrong. Fixed by adding missing timestamps across dimensions with null value

Changes ๐Ÿ”„

List any change relevant to the reviewer.

  1. Identify missing timestamps across dimensions data and add null value for those in each dimension

Target release date ๐Ÿ—“๏ธ

12-11-2024

Preview ๐Ÿ“ท

Hover showing two data for gapped plots Hover showing correct data
Screenshot 2024-11-07 at 6 04 58โ€ฏPM Screenshot 2024-11-07 at 6 05 14โ€ฏPM

How to test ๐Ÿงช

  1. Login a mock user
  2. Navigate to monitor page
  3. Select dashboard and required filters
  4. Even after post processing data should be visible correctly
  5. Now replace the /metrics response constant in serverHandler.ts with the following
    const response = {
      "data": {
        "result": [
          {
            "metric": {
              "cluster_id": "13418",
              "node_id": "primary-2"
            },
            "values": [
              [
                1730378400,
                "1.9846498107367672"
              ],
              [
                1730378700,
                "1.9490296676332808"
              ],
              [
                1730379000,
                "2.0869928900041823"
              ],
              [
                1730379300,
                "1.9540595252036872"
              ],
              [
                1730379600,
                "1.91288829401595"
              ],
              [
                1730379900,
                "2.0290340124670543"
              ],
              [
                1730380200,
                "1.9769679056409113"
              ],
            ]
          },
          {
            "metric": {
              "cluster_id": "13418",
              "node_id": "primary-4"
            },
            "values": [
              [
                1730895300,
                "1.4555706379868436"
              ],
              [
                1730895600,
                "0.8093735390369332"
              ],
              [
                1730895900,
                "0.6355631598714684"
              ],
              [
                1730896200,
                "0.5127285167168687"
              ],
              [
                1730896500,
                "0.5039695949469535"
              ],
              [
                1730896800,
                "0.5102423964287203"
              ],
              [
                1730897100,
                "0.5102125955344925"
              ],
            ]
          }
        ],
        "resultType": "matrix"
      },
      "isPartial": false,
      "stats": {
        "executionTimeMsec": 22,
        "seriesFetched": "78"
      },
      "status": "success"
    };

    After this you can see two plats with gaps correctly displayed, same data in develop branch without post processing has issues

As an Author I have considered ๐Ÿค”

Check all that apply

jaalah-akamai commented 6 days ago

I ok'd this after speaking with the CP team - this is needed for DBaaS GA. It's not actually an issue with Recharts which is what they're planning to migrate over to by the next release.

linode-gh-bot commented 6 days ago

Cloud Manager UI test results

:tada: 445 passing tests on test run #9 โ†—๏ธŽ

:x: Failing:white_check_mark: Passing:arrow_right_hook: Skipped:clock1: Duration
0 Failing445 Passing2 Skipped88m 29s
github-actions[bot] commented 6 days ago

Coverage Report: โœ…
Base Coverage: 87.46%
Current Coverage: 87.46%