TCP连接SysLog Golang拒绝获取连接

TCP连接SysLog Golang拒绝获取连接

问题描述:

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.

  1. Enable port in firewall with - sudo ufw allow 2114 command.
  2. Disable firewall and tried with that.
  3. 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

我在golang的ubuntu 16.4操作系统上使用syslog记录如下错误。 p> \ n

  w,err = syslog.Dial(“ tcp”,“ localhost:2114”,syslog.LOG_ERR,“ testapi”)
  code>  pre> 
 
 

p>

拨号TCP 127.0.0.1:2114:getsockopt:连接被拒绝 p>

我已经尝试了以下操作。 / p>

  1. 使用-sudo ufw allow 2114命令启用防火墙中的端口。 li>
  2. 禁用防火墙并尝试使用它。 li> 按照上述步骤尝试了其他端口。 li> ol>

    任何帮助将不胜感激。 p>

    以下是系统日志。 conf p>

     #/etc/rsyslog.conf rsyslog的配置文件。
    #
    #有关更多信息,请参见
    #/ usr / share / doc / rsyslog-doc  /html/rsyslog_conf.html
    #
    #默认日志记录规则可在/etc/rsyslog.d/50-default.conf
    
    
    ###############中找到 #### 
     ####模块#### 
     ################ 
     
    module(load =“ imuxs  ock“)#提供对本地系统日志记录的支持
    module(load =” imklog“)#提供内核日志记录的支持
    #module(load =” immark“)#提供--MARK--消息功能
     
    #提供 UDP syslog接收
    #module(load =“ imudp”)
    #input(type =“ imudp” port =“ 514”)
     
    #提供TCP syslog接收
    #module(load =“ imtcp”)  
    #input(type =“ imtcp” port =“ 514”)
     
    #启用非内核功能日志消息
     $ KLogPermitNonKernelFacility on 
     
     #############  ############ 
     ####全局指令#### 
     #######################  ### 
     
    #
    #使用传统的时间戳格式。
    #要启用高精度时间戳,请注释掉以下行。
    #
     $ ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat 
     
    #过滤重复的消息
     $  
     
    #
    #上的RepeatedMsgReduction设置所有日志文件的默认权限。
    #
     $ FileOwner syslog 
     $ FileGroup adm 
     $ FileCreateMode 0640 
     $ DirCreateMode 0755 
     $ Umask 0022 
     $  PrivDropToUser syslog 
     $ PrivDropToGroup syslog 
     
    #
    #放置假脱机文件和状态文件的位置
    #\  n $ WorkDirectory / var / spool / rsyslog 
     
    #
    #将所有配置文件包含在/etc/rsyslog.d/
    #
    $IncludeConfig /etc/rsyslog.d/*.conf
     代码>  pre> 
      div>

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")