2017-03-03 3 views
1

Azure에서 Node.js 앱을 실행하고 있습니다. 기존의 Azure 웹 응용 프로그램 로깅 기능은 응용 프로그램 로그를 최대 크기로 제한합니다. 따라서 하루 전과 같이 (예를 들어) 로그를 검색 할 수 없습니다. 리소스 탐색기에서 일부 구성/로그 설정을 수정할 수 있습니다.Azure 진단 로그 크기 제한

예를 들어 나는 다음과 같은 속성을 편집 할 수 있습니다 :

... 
"httpLogs": { 
    "fileSystem": { 
    "retentionInMb": 35, 
    "retentionInDays": null, 
    "enabled": true 
    }, 
    "azureBlobStorage": { 
    "sasUrl": null, 
    "retentionInDays": null, 
    "enabled": false 
    } 
}, 
... 

내가 'applicationLogs'에 대한 어떤 'retentionInDays'또는 'retentionInMb의 속성을 볼 수 없습니다.

"applicationLogs": { 
    "fileSystem": { 
    "level": "Off" 
    }, 

응용 프로그램 로그의 저장 시간이나 크기 제한을 늘릴 수 있습니까?

답변

0

그것은 푸른 웹 서버 및 응용 프로그램을 제한 밝혀 12 시간으로 로깅하지만 Node.js 로그에는 적용되지 않습니다. 총 로그 파일의 수에 대한 기본 제한이 10으로 설정되어 있습니다.

다음 구성은 성능 향상을 위해 프로덕션 환경에서 수행하지 않도록주의를 기울 였지만 원하는대로 변경할 수 있습니다.

loggingEnabled: true maxLogFileSizeInKB: 128 maxTotalLogFileSizeInKB: 1024 maxLogFiles: 20

0

나는 파일로 STDOUT 및 STDERR을 리디렉션하는 것이 좋습니다 그리고 당신은 당신을 위해 그들을 캡처하고 저장하는 마이크로 소프트에 의존하지 않습니다

var access = fs.createWriteStream('./api.access.log'); process.stdout.write = process.stderr.write = access.write.bind(access);

+0

는'createWriteStream'가 파일 시스템에서 파일을 고정하기 때문에 응용 프로그램이 실행되는 동안 우리는 파일에 액세스 할 수 없습니다했다. 허용 가능한 옵션이 아닌 파일을 릴리스하려면 앱을 먼저 중지해야합니다. –

관련 문제