The real answer to this question is probably a SIEM, where you correlate your proxy, DNS and other logs.
As mentioned the ProxySG is responsible for the name resolution in a explicit deployment. However what you could do as a workaround are redundant DNS querys, so that the client is also resolving the DNS names of all domains which it tries to access, even if it wouldn't have to.
If you are using a PAC file you can try and insert a "dnsResolve(host)" function there. Then the client will have to perform a DNS lookup (either from its local cache or from a DNS server) and you get your log entry on the DNS server with the source IP address of the client. Of course you will also get an additional DNS request from the ProxySG.