I noticed while performing a 'dmcli eRT getvalues Device.' that not all parameters underneath the path given are always shown.

As a result, I can't walk the entire data model by doing a 'dmcli eRT getvalues Device.' as some parameter values only show up if you do a dmcli eRT getvalues at a lower level.

For example, when I type the following - dmcli eRT getvalues Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.

I only see these 5 parameters:

CR component name is: eRT.com.cisco.spvtg.ccsp.CR
subsystem_prefix eRT.
getvalues from/to component(eRT.com.cisco.spvtg.ccsp.pam): Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.
Execution succeed.
Parameter 1 name: Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.HomeNetworkIsolation
type: bool, value: false
Parameter 2 name: Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.ContainerSupport
type: bool, value: false
Parameter 3 name: Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.CodebigSupport
type: bool, value: false
Parameter 4 name: Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.BLERadio
type: bool, value: false
Parameter 5 name: Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.Xupnp
type: bool, value: false


But I know there are more parameters underneath dmcli eRT getvalues Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.

If I do a 'dmcli eRT getnames dmcli eRT getvalues Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.' I see 39 parameters mentioned not just 5.

For example, I see Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.OnboardingLogging.


If I do a dmcli eRT getvalues on Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.OnboardingLogging. I can see the parameters underneath it:

CR component name is: eRT.com.cisco.spvtg.ccsp.CR
subsystem_prefix eRT.
getvalues from/to component(eRT.com.cisco.spvtg.ccsp.pam): Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.OnboardingLogging.
Execution succeed.
Parameter 1 name: Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.OnboardingLogging.Enable
type: bool, value: true


Why don't I see Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.OnboardingLogging.Enable show up when I do a 'dmcli eRT getvalues Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.'?

I was expecting to see all the parameters in the data model underneath the path given and not just some of them, or is that just not how dmcli eRT getvalues is supposed to work?

Thanks for your help with this!


  • No labels

3 Comments

  1. Hi Matthew J. Wahoske,

    There can be multiple reason for this to happen such as

    1. If certain data model is defined in XML but not implemented in DML layer, dummy API needs to be implemented in DML layer
    2. Need to maintain the prototype for all Get and Set functions in DML layer
    3. For Get functions if the default value is not returned in case of error scenario

    For example :

    if (AnscEqualString(ParamName, "X_RDKCENTRAL-COM_IsCloudReachable", TRUE))
    {
    CcspTraceWarning(("IsCloudReachable: %s \n",pMyObject→CloudPersonalizationURL));


    *pBool = FALSE;    ----> // If we don't have this the object query chain will break in case we hit the else part
    /* Get the CloudURL reachable status */
    if ( ANSC_STATUS_SUCCESS != CosaDmlGetCloudUIReachableStatus( pMyObject->CloudPersonalizationURL,
    pBool ) )
    {
    *pBool = FALSE;
    return FALSE;
    }
    return TRUE;
    }

    Above points won't impact for single parameter query, but will break the chain when we do complete object query. The component log will help to find out the reason for this chain break.

  2. Thanks for the reply.   You mentioned the 'component log'.   By this, do you mean just the output seen from the dmcli command, or is there some extra debug information, or something in the /rdklogs/logs/ directory that you mean by 'component log'?

    I think what you mean is something like /rdklogs/logs/PAMlog.txt.0 for the eRT.com.cisco.spvtg.ccsp.pam component, correct?

  3. Yes, you can refer the component specific log file in /rdklogs/logs/ path.