running syslog-ng in verbose mode
Solution 1:
Verbose output will be put into /var/log/messages.
Check the permissions of the directory where the sockets live. Normally the socket file is getting created during startup of a service, sometimes by the service itself. So check which user wants to start the service. and then fix the permissions of the directory where the socket file is getting created.
/var/lib/syslog-ng should be owned by the user syslog if syslog is the user who starts the service. As i'm not sure how your system looks in detail, i would suggest for debugging reasons only, to grant the group write access too.
rm /var/lib/syslog-ng/syslog-ng.ctl
chmod 770 /var/lib/syslog-ng
chown syslog:syslog /var/lib/syslog-ng
Just to be sure that there is no odd file in place which could break something, do the rm of the syslog-ng.ctl file. Change permissions to read, write, execute for the owner and the group. I guess others have nothing to do here on your system. Change owner and group to syslog for this directory.