Cố gắng sử dụng NLog để gửi các bản ghi được mã hóa JSON ra khỏi ứng dụng C# của chúng tôi, để đưa chúng vào CouchDB. Tuy nhiên, bằng cách sử dụng mục tiêu Mạng, tôi dường như không thể tìm cách đặt tiêu đề Kiểu nội dung chính xác; và CouchDB sẽ không có bất cứ điều gì để làm với đầu vào của tôi nếu không.Nhận NLog gửi JSON với các tiêu đề thích hợp?
CouchDB là out-of-the-box, hiện tại NLog config:
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" throwExceptions="true">
<variable name="FileLayout" value='{ "date":"${longdate}","level":"${level}","message":${message}}' />
<targets>
<target name="logfile" xsi:type="Network" address="http://127.0.0.1:5984/logger/" layout="${FileLayout}" />
</targets>
<rules>
<logger name="*" minlevel="Trace" writeTo="logfile" />
</rules>
</nlog>
Và HTTP thô (hostname chỉnh sửa):
POST http://127.0.0.1:5984/logger/ HTTP/1.1
Host: 127.0.0.1:5984
Content-Length: 221
Expect: 100-continue
{ "date":"2011-08-12 13:38:06.4603","level":"Info","message":{"backlog":0, "too_busy":0, "io_threads":1000, "threads":32766, "messages_processed":0}, "ProcessName": "foobar"}
Hãy đăng những gì bạn có trong điều khoản của mã và cấu hình cho cả ứng dụng và CoucheDb – Brook
Sửa với nói cấu hình – acp