Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[VOQ LAG HLD] Updates for show commands #802

Merged
merged 4 commits into from Aug 25, 2021

Conversation

vganesan-nokia
Copy link
Contributor

Show commands section is updated to include syntax and sample output

Show commands section is updated to include syntax and sample output
@anshuv-mfst
Copy link
Collaborator

@ ysmanman - could you please review , thanks

ysmanman
ysmanman previously approved these changes Jul 6, 2021
Copy link
Contributor

@arlakshm arlakshm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

as comments

Show VOQ system lags information

Options:
-d, --display [all] Show internal interfaces [default: all]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The help string is incorrect

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll fix this.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed. Removed "-d" option

Show VOQ system lags information

Options:
-d, --display [all] Show internal interfaces [default: all]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since we are displaying internal lag information, I think we dont need the -d option.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. We do not need the -d option. I'll remove this.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed.


Options:
-d, --display [all] Show internal interfaces [default: all]
-n, --namespace [] Namespace name or all
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you elabarote what will the difference in output between the commands show chassis system-lags and show chassis system-lags -n asic0 ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The intention was to use this to display the lags from a specific asic. The system lag name includes the DEVICE_METADATA['localhost']['asic_name'] which is expected to be same as the namespace name. If not, this will not work.
Do you think we can remove this option?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed. Since the system lag info is retrieved form chassis app db, which in global name space in supervisor card (i.e., it is namespace agnostic), instead of using namespace option, an option is introduced to take the asic_name (this need not be namespace name) which is used for filtering the output for the given specific asic.

- "-d" option removed; Asic name option is provided instead of using namespace.
Show VOQ system lags information

Options:
-x, --asicname TEXT Asic name
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why not use -n here ? similar to show chassis system_ports

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"-n" stands for "namespace". Only for system ports we get the system ports config info from databases from specific namespace. The "-x" option stands for "switch or asic". This is for getting info form chassis data bases in the supervisor card which is not in any specific namespace. The "-x" option is used for getting entries that have the given asic name in their keys. It is not used for accessing databases from different namespaces.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vganesan-nokia. Thanks for the explanation.
The option is little confusing for me. For example the output for the command show chassis system-lags -x asic0 will display lags which have asic0 in the key from all linecards. Is this correct ?

Would it simple if we provide option to filter on linecard iso of asic ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vganesan-nokia. Thanks for the explanation.
The option is little confusing for me. For example the output for the command show chassis system-lags -x asic0 will display lags which have asic0 in the key from all linecards. Is this correct ?

[@vganesan-nokia] correct

Would it simple if we provide option to filter on linecard iso of asic ?

[@vganesan-nokia ] Even though we filter on specific asic, the entries will be shown with the full key, which includes the 'hostname'. So we can identify which asic is from which linecard (assuming 'hostname' has the string that identifies the linceard)

We can replace the "asicname" option. by filtering on 'hostname'. The asic name is the value of the mandatory attribute DEVICE_METADATA['localhost']['asic_name']. So we have this filter on asic name. For 'linecard' we do not have such thing. However, in the multi slot chassis system we have a convention (not a written rule but kind of best practice) of using the mandatory attribute DEVICE_METADATA['localhost']['hostname'] to identify linecard/slot. This 'hostname' must be unique within the chassis. This is following the model of non chassis multi-asic box where the 'hostname' holds the name of the box. In chassis systems since each card acts as a multi asic box, this convention is followed.

I feel that instead of replacing 'asicname' by 'hostname', we can have 'hostname' as additional option so that we can filter on entries for specific asic from a specific line card or entries from all asics of a specific line card. If you feel that this is too much filtering, I'll replace 'asicname' by 'hostname'.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed. Added option for filtering on host or linecard name.

Added -t <host or linecard name> option to "show chassis system-lags" command
Changed the asicname option selector to "-n" from "-x". Changed hostname to linecardname and the option selector to "-l" from "-t"
Copy link
Contributor

@arlakshm arlakshm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@arlakshm arlakshm merged commit 878d180 into sonic-net:master Aug 25, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants