RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1566147 - Untranslated "HTTP error (%s - %s)" or "HTTP error (%s - %s): %s" is prefixed to the STDERR in some cases
Summary: Untranslated "HTTP error (%s - %s)" or "HTTP error (%s - %s): %s" is prefixed...
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: subscription-manager
Version: 7.5
Hardware: Unspecified
OS: Unspecified
medium
low
Target Milestone: rc
: ---
Assignee: candlepin-bugs
QA Contact: Red Hat subscription-manager QE Team
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-04-11 15:50 UTC by Shwetha Kallesh
Modified: 2021-02-08 15:16 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-02-08 15:15:58 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1507030 0 medium CLOSED Subscription-manager returns "System certificates corrupted. Please reregister." when listing available subscriptions 2024-10-04 07:51:23 UTC

Internal Links: 1507030

Description Shwetha Kallesh 2018-04-11 15:50:30 UTC
Description of problem:

"HTTP error code 400:" is prefixed to the STDERR when you try to auto-attach with an invalid service-level

Version-Release number of selected component (if applicable):
[root@hp-dl380pgen8-02-vm-3 ~]# subscription-manager version
server type: Red Hat Subscription Management
subscription management server: 2.3.4-1
subscription management rules: 5.26
subscription-manager: 1.21.2-3.git.33.c63a48b.el7


How reproducible:


Steps to Reproduce:
[root@hp-dl380pgen8-02-vm-3 ~]# subscription-manager register --serverurl shwetha-candlepin.usersys.redhat.com:8443/candlepin
Registering to: shwetha-candlepin.usersys.redhat.com:8443/candlepin
Username: admin
Password: 
Organization: admin
The system has been registered with ID: 6aea353c-6448-41c8-9ef0-c09ea9f64af4
The registered system name is: hp-dl380pgen8-02-vm-3.lab.bos.redhat.com
[root@hp-dl380pgen8-02-vm-3 ~]# subscription-manager subscribe --auto --servicelevel=FOO
HTTP error code 400: Service level "FOO" is not available to units of organization admin.


Actual results:
HTTP error code 400: Service level "FOO" is not available to units of organization admin.

Expected results:
Service level "foo" is not available to units of organization admin.


Additional info:

2018-04-11 11:45:01,681 [INFO] subscription-manager:29653:MainThread @connection.py:588 - Response: status=200, requestUuid=cab86b7b-a2cf-4fac-bd9c-2a7722a73ad4, request="GET /candlepin/status"
2018-04-11 11:45:03,374 [INFO] subscription-manager:29653:MainThread @connection.py:588 - Response: status=200, requestUuid=7304dadb-afac-41f7-89eb-9b94095b1a91, request="GET /candlepin/consumers/6aea353c-6448-41c8-9ef0-c09ea9f64af4"
2018-04-11 11:45:04,678 [INFO] subscription-manager:29653:MainThread @connection.py:588 - Response: status=200, requestUuid=925ff1ac-1276-4815-b5d1-1d7a4e843b1c, request="GET /candlepin/"
2018-04-11 11:45:05,949 [INFO] subscription-manager:29653:MainThread @connection.py:588 - Response: status=200, requestUuid=861dfa7e-5a8b-4c0d-8f59-5f29af4409d9, request="GET /candlepin/consumers/6aea353c-6448-41c8-9ef0-c09ea9f64af4/content_overrides"
2018-04-11 11:45:05,954 [INFO] subscription-manager:29653:MainThread @repolib.py:474 - repos updated: Repo updates

Total repo updates: 0
Updated
    <NONE>
Added (new)
    <NONE>
Deleted
    <NONE>
2018-04-11 11:45:05,959 [WARNING] subscription-manager:29653:MainThread @config.py:118 - /etc/ostree/remotes.d does not exist, so unable to save /etc/ostree/remotes.d/redhat.conf
2018-04-11 11:45:05,990 [INFO] subscription-manager:29653:MainThread @dmiinfo.py:75 - Using dmidecode dump file: /dev/mem
2018-04-11 11:45:06,055 [INFO] subscription-manager:29653:MainThread @cache.py:411 - Server does not support packages, skipping profile upload.
2018-04-11 11:45:07,405 [INFO] subscription-manager:29653:MainThread @connection.py:588 - Response: status=200, requestUuid=2b1eef0d-9ad4-4d4f-a549-7b426e5b991e, request="GET /candlepin/consumers/6aea353c-6448-41c8-9ef0-c09ea9f64af4/compliance"
2018-04-11 11:45:07,411 [INFO] subscription-manager:29653:MainThread @cert_sorter.py:205 - Product status: valid_products= partial_products= expired_products= unentitled_producs=100000000000060, 1000000000000023, 100000000000011, 27060, 69, 5050, 5051, 917571, 1, 37069, 37068, 213412341237, 37065, 37067, 213412341234, 37062, 100000000000006, 100000000000005, 100000000000002, 100000000000003, 100000000000000, 100000000000001, 213412341236, 100000000000069, 98121, 213412341235, 100000000000020, 37080, 32060, 806, 88888, 900, 908, 37060, 37090, 37091, 801, 6051, 6050, and 37070 future_products= valid_until=None
2018-04-11 11:45:09,129 [INFO] subscription-manager:29653:MainThread @connection.py:588 - Response: status=200, requestUuid=01d24264-3942-4532-b743-b4326f12a14d, request="GET /candlepin/consumers/6aea353c-6448-41c8-9ef0-c09ea9f64af4"
2018-04-11 11:45:11,281 [INFO] subscription-manager:29653:MainThread @connection.py:588 - Response: status=200, requestUuid=af68f21f-9bc1-49a9-8ba1-887a8416f99b, request="GET /candlepin/consumers/6aea353c-6448-41c8-9ef0-c09ea9f64af4"
2018-04-11 11:45:12,598 [INFO] subscription-manager:29653:MainThread @connection.py:588 - Response: status=400, requestUuid=8c6be8f5-083c-459d-82bf-0058b5835e6f, request="PUT /candlepin/consumers/6aea353c-6448-41c8-9ef0-c09ea9f64af4"
2018-04-11 11:45:12,599 [ERROR] subscription-manager:29653:MainThread @managercli.py:182 - Unable to attach: HTTP error (400 - Bad Request): Service level "FOO" is not available to units of organization admin.
2018-04-11 11:45:12,599 [ERROR] subscription-manager:29653:MainThread @managercli.py:183 - HTTP error (400 - Bad Request): Service level "FOO" is not available to units of organization admin.
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/subscription_manager/managercli.py", line 1596, in _do_command
    attach_service.attach_auto(self.options.service_level)
  File "/usr/lib64/python2.7/site-packages/rhsmlib/services/attach.py", line 31, in attach_auto
    self.cp.updateConsumer(self.identity.uuid, service_level=service_level)
  File "/usr/lib64/python2.7/site-packages/rhsm/connection.py", line 1051, in updateConsumer
    ret = self.conn.request_put(method, params)
  File "/usr/lib64/python2.7/site-packages/rhsm/connection.py", line 702, in request_put
    return self._request("PUT", method, params, headers=headers)
  File "/usr/lib64/python2.7/site-packages/rhsm/connection.py", line 719, in _request
    info=info, headers=headers)
  File "/usr/lib64/python2.7/site-packages/rhsm/connection.py", line 597, in _request
    self.validateResponse(result, request_type, handler)
  File "/usr/lib64/python2.7/site-packages/rhsm/connection.py", line 656, in validateResponse
    raise RestlibException(response['status'], error_msg, response.get('headers'))
RestlibException: HTTP error (400 - Bad Request): Service level "FOO" is not available to units of organization admin.

Comment 2 John Sefler 2018-04-11 17:07:06 UTC
This is new behavior as introduced by post subscription-manager commit 630e1a2eb06e6bfacac669ce11f38e228c907ea9 1507030: RestlibExceptions should show they originate server-side

Comment 3 John Sefler 2018-04-11 21:14:17 UTC
Something that we might want to fix....

exceptions.py has a translated message for RESTLIB_MESSAGE = _(u"HTTP error code %s: %s"), but there are other messages from commit 630e1a2eb06e6bfacac669ce11f38e228c907ea9 that are surfacing to the CLI too that are not translated.  e.g. "HTTP error (%s - %s): %s" as demonstrated in the stderr from...

201804111700:19.491 - FINE: ssh root.redhat.com subscription-manager repo-override --repo=label --add=param:value_7890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456
201804111700:21.158 - FINE: Stdout: 
201804111700:21.158 - FINE: Stderr: HTTP error (400 - Bad Request): value: size must be between 0 and 255

Comment 4 Alex Wood 2018-04-12 14:32:50 UTC
Note that there are two strings.  "HTTP error (%s - %s)" is in RestlibException.  "HTTP error code %s: %s" is assigned to the constant "RESTLIB_MESSAGE" and marked for translation. and is what is meant to be displayed on the console.  The __str__ on RestlibException is only meant to appear in logs.

There are two solutions here:
1. Mark the string in RestlibException's __str__ as translatable and be done with it.
2. Figure out why the __str__ from RestlibException is bubbling up to the console instead of being displayed using RESTLIB_MESSAGE

Comment 6 Rehana 2021-02-08 15:15:58 UTC
The original request in the bug was not bug , it was change intentionally as per comment 3 . 
The additional request made in comment 4 is a backlog item.

thanks,
Rehana


Note You need to log in before you can comment on or make changes to this bug.