Bug 1136926

Summary: enhanced debugging of proxy issues
Product: [Fedora] Fedora Reporter: Balint Szigeti <balint.szgt>
Component: dnfAssignee: Packaging Maintenance Team <packaging-team-maint>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: unspecified    
Version: 20CC: akozumpl, balint.szgt, jsilhan, packaging-team-maint, pnemade, rholy, tim.lauridsen
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-09-05 05:24:53 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Balint Szigeti 2014-09-03 15:31:17 UTC
I'd like to ask the developers to DNF application on debug level tell us to the user everything what actually it does, reads, sets.

I just had a case when I couldn't install RPMs by yum.
I traced the network traffic, routing, firewall, debug yum, check
network settings but didn't find the problem.
After several hours finally I found the problem. Someone configured
proxy settings which was loaded (/etc/profile.d/proxy.sh) for all user even though yum should have
used their own proxy setting but it didn't do.

The file contained:

# Proxy setup for all users.
export HTTP_PROXY="http://1.2.3.4:3218/"
export HTTPS_PROXY="http://1.2.3.4:3218/"
export FTP_PROXY="http://1.2.3.4:3218/"
export NO_PROXY="localhost,127.0.0.1,.local"

export http_proxy="1.2.3.4:3218/"
export https_proxy="1.2.3.4:3218/"
export ftp_proxy="1.2.3.4:3218/"
export no_proxy="localhost,127.0.0.1,.local"

Comment 1 Honza Silhan 2014-09-04 12:22:43 UTC
Hi, so DNF ignores settings from /etc/profile.d/proxy.sh or not? Have you tried it in DNF? If not, please try it and share the results. We can't log every sets/reads but we can log which proxy address it's using.

Comment 2 Balint Szigeti 2014-09-04 14:11:46 UTC
I've tested. When I set the proxy settings into the environment with export command DNF couldn't work.

After I reset the environment DNF worked correctly.

I would say, when the user run the DNF on debuglevel 9 the DNF output should tell, 'hello body, I use this proxy setting because I found it in the environment'.

Now that is the output after I have set the proxy in the environment:

[root@szigeti-6560b ~]$ dnf -d 9 clean
timer: config: 4 ms
cachedir: /var/cache/dnf/x86_64/20
DNF version: 0.5.4
Command: dnf -d 9 clean 
Installroot: /
Releasever: 20
Base command: clean
Extra commands: []
Error: clean requires an option: packages, metadata, dbcache, plugins, expire-cache, rpmdb, all
Cleaning repos: rpmfusion-free-updates Dropbox rpmfusion-nonfree-updates rpmfusion-free updates google-chrome rpmfusion-nonfree
Cleaning up.
[root@szigeti-6560b ~]$ dnf -d 9 check-update
timer: config: 4 ms
cachedir: /var/cache/dnf/x86_64/20
DNF version: 0.5.4
Command: dnf -d 9 check-update 
Installroot: /
Releasever: 20
Base command: check-update
Extra commands: []
repo: using cache for: rpmfusion-free-updates
not found deltainfo for: RPM Fusion for Fedora 20 - Free - Updates
repo: using cache for: Dropbox
not found deltainfo for: Dropbox Repository
repo: using cache for: rpmfusion-nonfree-updates
not found deltainfo for: RPM Fusion for Fedora 20 - Nonfree - Updates
repo: using cache for: rpmfusion-free
not found deltainfo for: RPM Fusion for Fedora 20 - Free
repo: using cache for: updates
repo: using cache for: google-chrome
not found deltainfo for: google-chrome
repo: using cache for: rpmfusion-nonfree
not found deltainfo for: RPM Fusion for Fedora 20 - Nonfree
timer: sack setup: 92 ms
Cleaning up.

Comment 3 Ales Kozumplik 2014-09-05 05:24:53 UTC
DNF is not looking at the mentioned environment variables, but CURL does. This is the same with many other network clients, and they don't report it either. Even if they did, we are not going to be taking explicit steps to make DNF debug network problems, that would be out of the tool's scope. Closing this.

Comment 4 Balint Szigeti 2014-09-05 07:53:44 UTC
I agree, DNF doesn't have to debug the network, but it should tell the users/admins what is happening (I'm reading this file, I'm setting these settings, etc...). This is a small modification which will help DNF users with similar issues.