NLog到PostgreSQL连接 [英] NLog to PostgreSQL connection

查看:60
本文介绍了NLog到PostgreSQL连接的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在通过 NLog连接 postgres 数据库时遇到问题.

I have a problem in connecting with the postgres database through NLog.

我通过查询建立了数据库:

I made the database with query:

CREATE TABLE system_logging
( 
ID serial primary key,
entered_date date default Now(),
log_application varchar(200) NULL, 
log_date character varying(100) NULL, 
log_level character varying(100) NULL, 
log_logger character varying(8000) NULL, 
log_message character varying(8000) NULL, 
log_machine_name character varying(8000) NULL, 
log_user_name character varying(8000) NULL, 
log_call_site character varying(8000) NULL, 
log_thread character varying(100) NULL, 
log_exception character varying(8000) NULL, 
log_stacktrace character varying(8000) NULL 
)

我的连接目标定义为:

<target name="database" xsi:type="Database"
         connectionString="Server=127.0.0.1;Port=5432;User Id=test;Password=t;Database=Test;">
      <commandText>Insert into "system_logging" ("log_date","log_level","log_logger","log_message","log_machine_name","log_user_name","log_call_site","log_thread","log_exception","log_stacktrace") values (:time_stamp,:level,:logger,:message,:machinename,:user_name,:call_site,:threadid,:log_exception,:stacktrace)</commandText>

   <parameter name="@time_stamp" layout="${longdate}"/> 
  <parameter name="@level" layout="${level}"/> 
  <parameter name="@logger" layout="${logger}"/> 
  <parameter name="@message" layout="${message}"/> 
  <parameter name="@machinename" layout="${machinename}"/> 
  <parameter name="@user_name" layout="${windows-identity:domain=true}"/> 
  <parameter name="@call_site" layout="${callsite:filename=true}"/>

  <parameter name="@threadid" layout="${threadid}"/> 
  <parameter name="@log_exception" layout="${exception}"/> 
  <parameter name="@stacktrace" layout="${stacktrace}"/>
</target>  

推荐答案

所以我进行了搜索并得到了答案:

So I searched on and got an answer :

 <target name="database" type="Database"> 
    <dbProvider>
        Npgsql.NpgsqlConnection,Npgsql,Version=3.0.3.0,Culture=neutral,PublicKeyToken=5d8b90d52f46fda7
    </dbProvider>
    <connectionString> 
        Server=127.0.0.1;Port=5432;User Id=postgres;Password=postgres;Database=sample;
    </connectionString> 
    <commandText> 
        insert into system_logging(log_date,log_level,log_logger,log_message,log_machine_name, log_user_name, log_call_site, log_thread, log_exception, log_stacktrace) values(@time_stamp, @level, @logger, @message,@machinename, @user_name, @call_site, @threadid, @log_exception, @stacktrace); 
    </commandText> 
    <parameter name="@time_stamp" layout="${longdate}"/> 
    <parameter name="@level" layout="${level}"/> 
    <parameter name="@logger" layout="${logger}"/> 
    <parameter name="@message" layout="${message}"/> 
    <parameter name="@machinename" layout="${machinename}"/> 
    <parameter name="@user_name" layout="${windows-identity:domain=true}"/> 
    <parameter name="@call_site" layout="${callsite:filename=true}"/>
    <parameter name="@threadid" layout="${threadid}"/> 
    <parameter name="@log_exception" layout="${exception}"/> 
    <parameter name="@stacktrace" layout="${stacktrace}"/>
</target> 

这篇关于NLog到PostgreSQL连接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆