英文:
Getting Connection refused for tcp connection SysLog Golang
问题
我正在使用golang在Ubuntu 16.4操作系统上使用syslog来记录错误,如下所示。
w, err = syslog.Dial("tcp", "localhost:2114", syslog.LOG_ERR, "testapi")
在这里,我遇到了以下错误。
dial tcp 127.0.0.1:2114: getsockopt: connection refused
我已经尝试了以下方法。
- 使用命令
sudo ufw allow 2114
在防火墙中启用端口。 - 禁用防火墙并尝试连接。
- 尝试使用其他端口进行上述步骤。
非常感谢任何帮助。
以下是syslog.conf的内容。
# /etc/rsyslog.conf Configuration file for rsyslog.
#
# For more information see
# /usr/share/doc/rsyslog-doc/html/rsyslog_conf.html
#
# Default logging rules can be found in /etc/rsyslog.d/50-default.conf
#################
#### MODULES ####
#################
module(load="imuxsock") # provides support for local system logging
module(load="imklog") # provides kernel logging support
#module(load="immark") # provides --MARK-- message capability
# provides UDP syslog reception
#module(load="imudp")
#input(type="imudp" port="514")
# provides TCP syslog reception
#module(load="imtcp")
#input(type="imtcp" port="514")
# Enable non-kernel facility klog messages
$KLogPermitNonKernelFacility on
##########################
#### GLOBAL DIRECTIVES ####
##########################
#
# Use traditional timestamp format.
# To enable high precision timestamps, comment out the following line.
#
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
# Filter duplicated messages
$RepeatedMsgReduction on
#
# Set the default permissions for all log files.
#
$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup syslog
#
# Where to place spool and state files
#
$WorkDirectory /var/spool/rsyslog
#
# Include all config files in /etc/rsyslog.d/
#
$IncludeConfig /etc/rsyslog.d/*.conf
英文:
I am using syslog on ubuntu 16.4 Operating System in golang to log error like following.
w, err = syslog.Dial("tcp", "localhost:2114", syslog.LOG_ERR, "testapi")
Here I'm getting following error.
dial tcp 127.0.0.1:2114: getsockopt: connection refused
I have already tried following things.
- Enable port in firewall with - sudo ufw allow 2114 command.
- Disable firewall and tried with that.
- Tried other port with above steps.
Any help with will be really appreciated.
Here is the syslog.conf
# /etc/rsyslog.conf Configuration file for rsyslog.
#
# For more information see
# /usr/share/doc/rsyslog-doc/html/rsyslog_conf.html
#
# Default logging rules can be found in /etc/rsyslog.d/50-default.conf
#################
#### MODULES ####
#################
module(load="imuxsock") # provides support for local system logging
module(load="imklog") # provides kernel logging support
#module(load="immark") # provides --MARK-- message capability
# provides UDP syslog reception
#module(load="imudp")
#input(type="imudp" port="514")
# provides TCP syslog reception
#module(load="imtcp")
#input(type="imtcp" port="514")
# Enable non-kernel facility klog messages
$KLogPermitNonKernelFacility on
##########################
#### GLOBAL DIRECTIVES ####
##########################
#
# Use traditional timestamp format.
# To enable high precision timestamps, comment out the following line.
#
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
# Filter duplicated messages
$RepeatedMsgReduction on
#
# Set the default permissions for all log files.
#
$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup syslog
#
# Where to place spool and state files
#
$WorkDirectory /var/spool/rsyslog
#
# Include all config files in /etc/rsyslog.d/
#
$IncludeConfig /etc/rsyslog.d/*.conf
答案1
得分: 0
你需要取消注释以下部分:
#module(load="imtcp")
#input(type="imtcp" port="514")
以提供Syslog TCP接收功能。完成后,重新启动Syslog服务即可生效。
如果你想在端口2114
上监听TCP连接,你需要将输入部分修改为:
input(type="imtcp" port="2114")
英文:
You need to uncomment
#module(load="imtcp")
#input(type="imtcp" port="514")
To provide syslog TCP reception. Once you have do this restart the syslog service and will work.
If you want listen tcp on port 2114
you need to change the input as
input(type="imtcp" port="2114")
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论