Skip to content

Commit

Permalink
feat: add log for DIMSE service
Browse files Browse the repository at this point in the history
  • Loading branch information
Chinlinlee committed Aug 24, 2023
1 parent f172d94 commit 4b6ba4d
Show file tree
Hide file tree
Showing 9 changed files with 53 additions and 2 deletions.
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,7 @@
/local/local-upload-stow-log.json

/config/raccoon-dimse-app.json
/pm2log
/config/logback.xml
/pm2log/**
!pm2log/.gitkeep
config/ae-prod.properties
51 changes: 50 additions & 1 deletion dimse/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ const _ = require("lodash");
const { java } = require("@models/DICOM/dcm4che/java-instance");
const { importClass } = require("java-bridge");
const path = require("path");
const fs = require("fs");

const { ApplicationEntity } = require("@dcm4che/net/ApplicationEntity");
const { BasicCEchoSCP } = require("@dcm4che/net/service/BasicCEchoSCP");
Expand All @@ -21,7 +22,8 @@ const { JsCGetScp } = require("./c-get");
const { JsStgCmtScp } = require("./stgcmt");
const { raccoonConfig } = require("@root/config-class");
const { Connection$EndpointIdentificationAlgorithm } = require("@dcm4che/net/Connection$EndpointIdentificationAlgorithm");
const { default: SSLManagerFactory } = require("@dcm4che/net/SSLManagerFactory");
const { SSLManagerFactory } = require("@dcm4che/net/SSLManagerFactory");
const { Common } = require("@chinlinlee/dcm777/common/Common");

class DcmQrScp {
device = new Device("dcmqrscp");
Expand Down Expand Up @@ -75,6 +77,7 @@ class DcmQrScp {


async start() {
this.configureLog();
this.configureConnection();
this.configureBindServer();
this.configureTransferCapability();
Expand Down Expand Up @@ -274,6 +277,52 @@ class DcmQrScp {

return this.connection.isTlsSync();
}

configureLog() {
this.generateLogFile();
Common.LoadLogConfigSync(
path.join(
__dirname,
"../config/logback.xml"
)
);
}

generateLogFile() {
let logBackXml = `<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
<charset>utf-8</charset>
</encoder>
<file>${path.normalize(path.join(__dirname, "../pm2log/raccoon.log"))}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>${path.normalize(path.join(__dirname, "../pm2log/raccoon.log"))}%i</fileNamePattern>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>1MB</MaxFileSize>
</triggeringPolicy>
</appender>
<root level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</root>
</configuration>`;

fs.writeFileSync(path.join(
__dirname,
"../config/logback.xml"
), logBackXml, "utf-8");
}
}

module.exports.DcmQrScp = DcmQrScp;
Binary file not shown.
Binary file not shown.
Binary file modified models/DICOM/dcm4che/javaNode/dcm4chee/lib/qrscp/dcm777-5.29.2.jar
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Empty file added pm2log/.gitkeep
Empty file.

0 comments on commit 4b6ba4d

Please sign in to comment.