Monitoring the Busy hours based on UDCs

You can calculate the busy hour values for a set of metrics from any Resource type by using the enhanced Busy hour REST API. The REST API displays the values for Busy hour determiner that is used in the API call in a clean format and the metrics that are used in the UDC creation. The Busy hour can be calculated based on the metrics from the descendant hierarchy of the parent Resource type level.

This information helps you understand how to create a dashboard that displays the busy hour data for specific metrics.
Steps to create a customized dashboard to display the peak hours in your network based on the selected determiner with one or more metrics.
  • Create a UDC with one or more raw metrics that can be used as determiner in defining a stored busy hour.
  • Create a stored busy hour by using the UDC as the determiner.
  • Call the REST API definition in a customized dashboard
  • Create a customized dashboard to display the busy hour determiner and the metrics that are used in the UDC.

Installed Technology Packs

You can install any 2G, 3G, 4G, or 5G Technology Pack to see create this scenario.

Create a UDC that can be used as determiner in defining a stored busy hour

Follow these steps to create a UDC:
  1. Log in to Telco Network Cloud Manager - Performance Dashboards directly in dedicated stand-alone installation.

    Or

    Log in to Dashboard Application Services Hub if your environment is integrated with Watson AIOps components.
  2. Click Administration > Metric Management > User-defined calculations (UDC).

    You can see the User-defined calculations (UDC) page that has a grid with configured UDCs and their details.

  3. Click Create new and enter or select the following details in the Create new UDC page:
    Provide the following details:
    Field Example value
    Insert UDC name SBH.UDC_plusNutrancell1
    Focal Resource type nUtranCell
    Aggregation Average
    Description UDC to be used in SBH definition
    Add field From the Metric field type, select the following metric:
    • nUtranCell.N.RRC.ReEst.Att
    Use the + operator and select another metric.
    • nUtranCell.N.RRC.SetupReq.Att
    You can use the following formula:
    [nUtranCell]![{nUtranCell.N.RRC.ReEst.Att}] + [nUtranCell]![{nUtranCell.N.RRC.SetupReq.Att}]
    Validate Validate the formula.
  4. Click Save to be able to see your UDC and its details on the User-defined calculations (UDC) page.

See the SBH.UDC_plusNutrancell1 UDC creation with the nUtranCell.N.RRC.ReEst.Att and nUtranCell.N.RRC.SetupReq.Att metrics in the following video.

Create a stored busy hour by using the UDC as the determiner

Follow these steps:
  1. Log in to Telco Network Cloud Manager - Performance Dashboards directly in dedicated stand-alone installation.

    Or

    Log in to Dashboard Application Services Hub if your environment is integrated with Watson AIOps components.
  2. Click Administration > Metric Management > Busy hour definition.

    You can see the Busy hour definition page that has a grid with configured Busy hours and their details.

  3. Click Create new and enter the following details in the Create new Busy hour page:
    Table 1. Entering values in Create new Busy hour page
    Field Example value
    Busy hour name SBH_nUtranell_plus1
    Focal Resource type and group nUtranCell
    Aggregation type Select max
    Schedule name Select the EVERYDAY schedule type.
    Sliding mode Select nonsliding mode. By default, the value for this parameter is nonsliding.

    Nonsliding means that the busy hour is always aligned to hours, for example 14:00 to 15:00 or 18:00 to 19:00. Sliding busy hours are calculated down to the interval of the data, for example 14:15 to 15:15.

    Slide by Select hour.
    Metrics pane

    A busy hour determiner is the metric that is used to determine the busiest hour.

    SBH.UDC_plusNutrancell1
    Select a Focal Resource type nUtranCell
    Select a field type. Select UDC.

    Click the arrow (Arrow icon) to move the selected metric to the Selected metrics pane.

  4. Click Save.

    The newly created Busy hour definition with all its attributes is available in the Busy hour definition page.

See the SBH_nUtranell_plus1 Busy hour definition creation with the AVG(nUtranCell.N.User.RRCConn.Active.Avg), AVG(nUtranCell.N.User.RRCConn.Active.Max) metrics in the following video.

REST API definition

REST API definition that can be used in a customized dashboard to retrieve the busy hour data for specific metrics from the Timeseries database.

https://<dashboard_route>/service/dataset/metric/busyhourvalue?resourceType=nUtranCell&sbhdeterminer=sbhd_max_day_SBH.UDC_plusNutrancell&sbhvalues=AVG(nUtranCell.N.User.RRCConn.Active.Avg),AVG(nUtranCell.N.User.RRCConn.Active.Max)&flatten=true&start=1670803200000&end=1673481600000&properties=technology,vendor
Enter the URI in a single line.
https://<dashboard_hostname><dashboard_port>/service/dataset/metric/busyhourvalue?resourceType=nUtranCell&sbhdeterminer=sbhd_max_day_SBH.UDC_plusNutrancell&sbhvalues=AVG(nUtranCell.N.User.RRCConn.Active.Avg),AVG(nUtranCell.N.User.RRCConn.Active.Max)&flatten=true&start=1670803200000&end=1673481600000&properties=technology,vendor
Enter the URI in a single line.
Method
The supported request type.
https GET
URL parameters
Name Required Default value Description
sbhdeterminer Yes N/A Metric that is used to monitor for Busy hour
sbhvalues No N/A Metrics that are used in the API to monitor along with the SBH determiner.
start Yes N/A The start time for which busy hour data must be returned.
end Yes N/A The end time for which busy hour data must be returned.
properties No N/A Comma-separated list of properties that are returned for the entities that are specified. For example, vendor, and technology.
sortBy No N/A Metric expression that defines the sort order of the specified sbhvalues. Only one metric is allowed with the sortBy expression. Prefix + or - to indicate sort direction.
groupByProperty No N/A
Note: Property name is case-sensitive.
resourceType Yes N/A Comma-separated list of Resource Types. For example, nUtranCell.
flatten Yes True

Output of the result without nested the objects.

Give True value to be able to create a dashboard from the retrieved values.

Sample URLs
https://<dashboard_route>/service/dataset/metric/
busyhourvalue?resourceType=nUtranCell&sbhdeterminer=sbhd_max_day_SBH.UDC_plusNutrancell&sbhvalues=AVG(nUtranCell.N.User.RRCConn.Active.Avg),AVG(nUtranCell.N.User.RRCConn.Active.Max)&flatten=true&start=1672963200000&end=1673481600000&properties=technology,vendor
https://<dashboard_route>/service/dataset/metric/
busyhourvalue?resourceType=nUtranCell&sbhdeterminer=sbhd_max_day_SBH.UDC_plusNutrancell&sbhvalues=AVG(nUtranCell.N.User.RRCConn.Active.Avg),AVG(nUtranCell.N.User.RRCConn.Active.Max)&flatten=true&start=1672963200000&end=1673481600000&properties=technology,vendor&sortBy=sbhd_max_day_SBH.UDC_plusNutrancell&groupByProperty=vendor
Special behavior
The difference between the start and end time must always be one day or seven days. For example,
Friday, January 6, 2023 8:00:00 AM
Thursday, January 12, 2023 8:00:00 AM
Note: Provide the UNIX timestamp for the start and end time.
Response
https://<dashboard_route>/service/dataset/metric/
busyhourvalue?resourceType=nUtranCell&sbhdeterminer=sbhd_max_day_SBH.UDC_plusNutrancell&sbhvalues=AVG(nUtranCell.N.User.RRCConn.Active.Avg),AVG(nUtranCell.N.User.RRCConn.Active.Max)&flatten=true&start=1672963200000&end=1673481600000&properties=technology,vendor&sortBy=sbhd_max_day_SBH.UDC_plusNutrancell&groupByProperty=vendor
The results are returned as JSON data that contains an array of the following fields:
Parameter Type Description
sbhdeterminer String ResourceType!sbhdMetric
sbhvalues List[String] List of resourcetype!Metric
Start time Long Start time
End time Long End time
properties List[String] property
sortBy String ResourceID or sbhdeterminer value
groupByProperty String ResourceID
ResourceType String Resource Type
[
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 40,
    "timestamp": 1672963200000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 21,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 19,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/0",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 40,
    "timestamp": 1673049600000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 21,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 19,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/0",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 40,
    "timestamp": 1673236800000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 21,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 19,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/0",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 40,
    "timestamp": 1673308800000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 21,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 19,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/0",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 40,
    "timestamp": 1673395200000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 21,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 19,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/0",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 112,
    "timestamp": 1672963200000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 34,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 78,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/1",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 112,
    "timestamp": 1673049600000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 34,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 78,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/1",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 112,
    "timestamp": 1673236800000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 34,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 78,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/1",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 112,
    "timestamp": 1673308800000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 34,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 78,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/1",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 112,
    "timestamp": 1673395200000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 34,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 78,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/1",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 0,
    "timestamp": 1672963200000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 0,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 0,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/2",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 0,
    "timestamp": 1673049600000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 0,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 0,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/2",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 0,
    "timestamp": 1673236800000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 0,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 0,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/2",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 0,
    "timestamp": 1673308800000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 0,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 0,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/2",
    "vendor": "Huawei"
  },
  {
    "sbhd_max_day_SBH.UDC_plusNutrancell": 0,
    "timestamp": 1673395200000,
    "AVG(nUtranCell.N.User.RRCConn.Active.Avg)": 0,
    "AVG(nUtranCell.N.User.RRCConn.Active.Max)": 0,
    "technology": "NR",
    "resource": "KH2000_AUH-12345_3/2",
    "vendor": "Huawei"
  }
]

Create a customized dashboard to display the busy hour data

Follow these steps to create a simple dashboard that displays the busy hour data:
  1. Access the Dashboard Designer.

    Create a data definition.

  2. Click Data Definitions > Create New Data Definition from the left navigation. For more information, see Data Definitions.
  3. Enter the following details:
    Field Details
    New Data Definition Click the Edit () button and provide the name sbhDD to the data definition.
    Connector Type Select NPI.
    Connector Source Name default-npi
    Method Get
    Endpoint URL https://ui:30021, which is the URL for the UI Service from where the data is fetched.
    URI Provide the following URI
    /service/dataset/metric/busyhourvalue?resourceType=nUtranCell&sbhdeterminer=sbhd_max_day_SBH.UDC_plusNutrancell&sbhvalues=AVG(nUtranCell.N.User.RRCConn.Active.Avg),AVG(nUtranCell.N.User.RRCConn.Active.Max)&flatten=true&start=1670803200000&end=1673481600000&properties=technology,vendor
  4. Save the data definition in a new category by name SBH category.

    Create a layout.

  5. Create a 1x1 Layout to hold a single widget and click Use this Layout.

    You can either use the default layout or create a custom one. For more information, see Layouts.

    Create a widget.

  6. Click WidgetsCustomCreate new widget. For more information, see Widgets.
  7. Click Charts from the left navigation and drag the Grid chart from Other Charts category. For more information, see Charts.

    Assign an existing data definition to the widget.

  8. Click the More options () button and select Set Data Definition.
  9. In the Set Data Definition window, select the sbhDD data definition that is listed under Data Definition (select one or more) pane, and click the Move to Selected button to add the data definitions to Selected Data Definition pane.
  10. Set the properties for the dashboard to display the metrics and the Busy hour determiner.
  11. Preview the dashboard before you deploy it.