HTTP api에서 로그 오류

이 문서는 Microsoft 기계 번역 소프트웨어를 이용하여 번역되었으며 Microsoft Community에 의한 Community Translation Framework(CTF) 기술 혹은 사람이 번역한 내용에 의하여 사후 편집될 수 있습니다. Microsoft는 Knowledge Base에 있는 모든 문서에 다양한 언어로 접근할 수 있도록 하기 위하여 기계 번역, 사람에 의한 번역 및 커뮤니티가 편집한 내용을 모두 제공합니다. 번역된 문서는 어휘, 구문 및/혹은 문법에 오류가 있을 수 있습니다. Microsoft는 번역 오류로 인한 부정확성, 오류 및/또는 손해와 이를 고객이 사용하는 데에 대하여 책임을 지지 않습니다.

이 문서의 영문 버전 보기:820729
요약
HTTP api 오류 로깅 기능을 설명합니다.

HTTP 기반 응용 프로그램에서 발생 하는 일부 오류 처리를 위해 응용 프로그램에 다시 전달 되는 대신 HTTP API에서 자동으로 처리 됩니다. 이 문제는 이벤트 로그 나 응용 프로그램 처리기에 그렇지 않으면 이러한 오류의 빈도 홍수 수 있기 때문에 발생 합니다.

다음 항목은 HTTP API 오류 로깅의 다양 한 측면에 설명합니다.
  • HTTP API errorlogging를 구성 합니다.
    레지스트리 설정을 제어 HTTP API 로그 오류, themaximum 로그 파일 크기 및 로그 파일의 위치를 허용 합니다.
  • 형식의 HTTP APIerror 기록
    HTTP API theWorld 와이드 웹 컨소시엄 (W3C) 로그 파일의 규칙을 준수 하는 로그 파일을 만듭니다. 이러한 로그 파일을 구문 분석 하려면 표준 도구를 사용할 수 있습니다. 그러나, W3C 로그 파일과 달리 HTTP API 로그 파일 수행 notcontain 열 이름.
  • HTTP API가 기록 하는 오류 유형
    HTTP API는 많은 일반적인 오류를 기록합니다.
해결 방법

HTTP API 오류 로깅 구성

HTTP \Parameters 키 아래의 세 가지 레지스트리 값은 HTTP API 오류 로깅을 제어합니다. 이 키는 다음 레지스트리 키 아래에 있습니다.
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
참고: 이후 버전의 Windows 운영 체제 구성 값의 형태와 위치 변경할 수 있습니다.

레지스트리 값을 변경 하 고를 보거나 변경 하려면 로그 파일 및 폴더가 포함 된 로컬 관리자/시스템 자격 증명이 있어야 합니다.

레지스트리 값의 구성 정보는 HTTP API 드라이버가 시작 될 때 읽기입니다. 따라서 설정을 변경 하면 중지 되 고 새 값을 읽으려면 드라이버를 다시 시작 해야 있습니다. 이렇게 하려면 다음 콘솔 명령을 입력 합니다.
net stop http
net 시작 http
로그 파일 이름을 지정 하는 명명 규칙 사용 됩니다.
이 업데이트 + 시퀀스 번호 +.log
예: httperr4.log
ErrorLogFileTruncateSize 레지스트리 값에 지정 된 최대 크기에 도달 하면 로그 파일을 전환 합니다. 1 메가바이트 (MB) 미만 이어야이 합니다.

오류 로깅의 구성이 올바르지 않습니다. 또는 모든 종류의 오류가 HTTP API 로그 파일에 쓰는 동안 발생 하는 경우 HTTP API는 이벤트 로깅을 사용 하 여 오류 로깅이 발생 하지 않음을 있는지 관리자에 게 알립니다.

다음 표에서 레지스트리 구성 값을 설명합니다.
레지스트리 값설명
EnableErrorLogging설정할 수 있는 TRUE로 FALSE 또는 오류 로깅 사용 불가능 하 게 하는 DWORD . 기본값은 TRUE입니다.
ErrorLogFileTruncateSize오류 로그 파일의 최대 크기를 바이트 단위로 지정 하는 DWORD 입니다. 기본값은 1MB (0x100000)입니다.

참고: 지정된 된 값은 기본값 보다 작을 수 없습니다.
ErrorLoggingDir여기서 HTTP API가 해당 로깅 파일 폴더를 지정 하는 문자열 입니다.

HTTP API 업데이트 하위 폴더를 만들고 지정된 된 폴더에 하위 폴더에서 로그 파일을 저장 합니다. 이 하위 폴더와 로그 파일을 동일한 사용 권한 설정이 나타납니다. 관리자 및 로컬 시스템 계정에 전체 액세스를 권한이 있습니다. 다른 사용자가 액세스할을 수 없습니다.

다음은 레지스트리에서 폴더를 지정 하지 않으면 기본 폴더입니다.
%SystemRoot%\System32\LogFiles

참고:ErrorLoggingDir 문자열 값에는 전체 로컬 경로 여야 합니다. 그러나 % SystemRoot % 포함 될 수 있습니다. 네트워크 드라이브 또는 네트워크 공유를 사용할 수 없습니다.

맨 위로

HTTP API 오류 로그의 형식

일반적으로 HTTP API 오류 로그 파일 HTTP API 오류 로그 파일에 열 머리글이 없는 제외 하 고 W3C 오류 로그와 같은 형식을 제공 합니다. HTTP API 오류 로그의 각 줄에 하나 이상의 오류가 기록 됩니다. 필드가 특정 순서로 나타납니다. 단일 공백 문자 (0x0020) 각 필드를 이전 필드에서를 구분합니다. 더하기 기호 (0x002b)가 표시 각 필드에서 공백 문자, 탭 및 인쇄할 수 없는 제어 문자를 대체합니다.

다음 표에서 오류 로그 레코드에서 필드의 순서와.
필드설명
날짜날짜 필드는 W3C 형식을 따릅니다. 이 필드는 utc (지역 표준시)에 따라 결정 됩니다. 날짜 필드는 항상 형식 YYYY-MM-DD.로 10 자 예를 들어, 2003 년 5 월 1 일은 2003-05-01로 표시 됩니다.
시간시간 필드는 W3C 형식을 따릅니다. 이 필드는 UTC를 기준으로 합니다. 시간 필드는 항상 8 자 형태의 MM:HH:SS. 예를 들어, 오후 5 시 30 분 (UTC)은 17시 30분: 00로 표시 됩니다.
클라이언트 IP 주소영향을 받는 클라이언트의 IP 주소입니다. 이 필드의 값은 IPv4 주소나 IPv6 주소 중 하나가 될 수 있습니다. 클라이언트 IP 주소는 IPv6 주소의 경우 ScopeId 필드 주소에도 포함 됩니다.
클라이언트 포트영향을 받는 클라이언트의 포트 번호입니다.
서버 IP 주소영향을 받는 서버의 IP 주소입니다. 이 필드의 값은 IPv4 주소나 IPv6 주소 중 하나가 될 수 있습니다. 서버 IP 주소는 IPv6 주소의 경우 ScopeId 필드 주소에도 포함 됩니다.
서버 포트영향을 받는 서버의 포트 번호입니다.
프로토콜 버전사용 중인 프로토콜의 버전입니다.

하이픈 (0x002D)는 placeholderfor로는 연결 하지 구문 분석에 충분히 todetermine 프로토콜 버전, 비어 있는 필드입니다.

주 버전 번호 또는 부 버전 번호를 구문 보다는 isgreater 또는 10에 버전이 http /?.?.
동사마지막 요청을 하는 동사 상태 패스 구문 분석 됩니다. 알 수 없는 동사가 포함 되지만, 255 바이트를 초과 하는 동사는이 길이로 잘립니다. 동사를 사용할 수 없는 경우는 하이픈 (0x002D)이 빈 필드에 대 한 자리 표시자로 사용 됩니다.
CookedURL + 쿼리URL과 연관 된 쿼리는 물음표 (0x3F)로 분리 된 하나의 필드로 기록 됩니다. 이 필드는 4096 바이트의 길이 제한에서 잘립니다.

이 URL은을 구문 분석 ("cooked")는 로컬 코드 페이지 변환으로 기록 되 고 유니코드 필드로 처리 됩니다.

이 URL가 아닌을 구문 분석 ("cooked") thetime 로깅에 유니코드 변환 없이 정확 하 게 복사 됩니다.

HTTP API는이 URL을 구문 분석할 수 없습니다, hyphen(0x002D)는 비어 있는 필드에 대 한 자리 표시자로 사용 됩니다.
프로토콜 상태프로토콜 상태는 999를 초과할 수 없습니다.

사용할 수 있는 requestis에 대 한 응답의 프로토콜 상태가, 것에 기록 됩니다이 필드.

프로토콜 상태가 사용 불가능 한 hyphen(0x002D) 빈 필드에 대 한 자리 표시자로 사용 됩니다.
SiteId이 버전의 HTTP API 사용 되지 않습니다. 이 필드에는 자리 표시자 하이픈 (0x002D) 항상 표시 됩니다.
원인 문구이 필드는 기록 중인 오류의 종류를 식별 하는 문자열을 포함 합니다. 이 필드는 절대 비어 있습니다.
큐 이름이 요청 대기열 이름입니다.
다음 예제는 HTTP API 오류 로그에서:
2002-07-05 18시 45분: 09 172.31.77.6 172.31.77.6 2094 80 HTTP/1.1 GET /qos/1kbfile.txt 503-ConnLimit 2002-07-05 19시 51분: 59 127.0.0.1 127.0.0.1 2780 80 HTTP/1.1 GET /ThisIsMyUrl.htm 400-호스트 이름 2002-07-05 19시 53분: 00 127.0.0.1 127.0.0.1 2894 80 HTTP/2.0 GET / 505-Version_N/S 2002-07-05 20시 06분: 01 172.31.77.6 64388 127.0.0.1 80-----Timer_MinBytesPerSecond
맨 위로

HTTP API 로그 오류

HTTP API 로그 오류 응답을 클라이언트, 연결 시간 초과, 고아 요청 및 삭제 된 연결을 잘못 처리 합니다.

다음 목록은 HTTP API가 기록 하는 오류 종류를 식별 합니다.
  • 클라이언트에 대 한 응답 HTTP API 오류 마지막으로 받은 요청에서 구문 분석 오류가 발생 하는 400 오류는 예를 들어, 클라이언트에 응답을 보냅니다. HTTP API 오류 응답을 보낸 후 연결을 닫습니다.
  • 연결 시간 초과 HTTP API 제한 시간이 초과 된 연결. 요청이 보류 중일 때 스레드에서 연결 시간이 초과 면 요청 끊어졌거나 오류 로그에서에 대 한 자세한 정보를 제공 하는 데 사용 됩니다.
  • 분리 된 요청 해당 프로세스로 라우팅되는 여전히 대기 중인된 요청은 사용자 모드 프로세스가 예기치 않게 중지 됩니다. HTTP API 오류 로그에서 분리 된 요청을 기록합니다.
특정 오류 형식은 항상 각 오류 행의 마지막 필드로 나타나는 원인 문구 문자열에서 지정 됩니다. 다음 표에서 HTTP API 이유 구.
원인 문구설명

AppOffline서비스 사용할 수 없음 오류 (HTTP 오류 503) 발생 했습니다. 응용 프로그램 오류로 인해 응용 프로그램이 오프 라인 상태가 될 수 있기 때문에 서비스를 사용할 수 없는 경우
AppPoolTimer서비스 사용할 수 없음 오류 (HTTP 오류 503) 발생 했습니다. 서비스 응용 프로그램 풀 프로세스가 요청을 처리할 사용 중 이므로 사용할 수 없는 경우
AppShutdown서비스 사용할 수 없음 오류 (HTTP 오류 503) 발생 했습니다. 서비스가 종료 되기 때문에 응용 프로그램이 자동으로 관리자 정책에 대 한 응답으로 사용할 수 없는 경우
BadRequest요청을 처리 하는 동안 구문 분석 오류가 발생 했습니다.
Client_Reset작업자 프로세스가 요청을 할당할 수 있습니다 전에 클라이언트와 서버 간 연결이 닫혔습니다. 이 문제의 가장 일반적인 원인은 클라이언트가 서버에 연결을 닫습니다 중간입니다.
Connection_Abandoned_By_AppPool응용 프로그램 풀의 작업자 프로세스는 예기치 않게 종료 되거나 핸들을 닫아서 보류 중인 요청을 분리 했습니다.
Connection_Abandoned_By_ReqQueue응용 프로그램 풀의 작업자 프로세스는 예기치 않게 종료 되거나 핸들을 닫아서 보류 중인 요청을 분리 했습니다. Windows Vista 및 이후 버전에 특정 Windows Server 2008 및 이후 버전.
Connection_Dropped서버는 최종 응답 패킷을 보낼 수 전에 클라이언트와 서버 간 연결이 닫혔습니다. 이 문제의 가장 일반적인 원인은 클라이언트가 서버에 연결을 닫습니다 중간입니다.
Connection_Dropped_List_Full클라이언트와 서버 간의 삭제 된 연결 목록이 꽉 찼습니다. Windows Vista 및 이후 버전에 특정 Windows Server 2008 및 이후 버전.
ConnLimit서비스 사용할 수 없음 오류 (HTTP 오류 503) 발생 했습니다. 사이트 수준 연결 한계에 도달 또는 초과 하기 때문에 서비스를 사용할 수 없는 경우
Connections_Refused커널 메모리 NonPagedPool 20MB 아래 내 렸 고 http.sys 새 연결을 수신 중지
사용 안 함서비스 사용할 수 없음 오류 (HTTP 오류 503) 발생 했습니다. 서비스 하 고 있으므로 관리자 응용 프로그램이 오프 라인으로 사용할 수 없는 경우
EntityTooLarge엔터티에 허용 되는 최대 크기를 초과 합니다.
FieldLength필드 길이 한계를 초과 했습니다.
사용할 수 없음구문 분석 동안 금지 된 요소나 시퀀스가 발생 했습니다.
헤더머리글에서 구문 분석 오류가 발생 했습니다.
호스트 이름호스트 이름을 처리 하는 동안 구문 분석 오류가 발생 했습니다.
내부내부 서버 오류 (HTTP 오류 500).
Invalid_CR/LF잘못 된 캐리지 리턴이나 줄 바꿈이 발생 했습니다.
LengthRequired필수 길이 값이 없습니다.
N/A서비스 사용할 수 없음 오류 (HTTP 오류 503) 발생 했습니다. (예: 메모리 할당 오류 또는 URL 예약 목록 충돌) 내부 오류가 발생 했기 때문에 서비스를 사용할 수 없는 경우
N / I구현 되지 않음 오류 발생 (HTTP 오류 501), 또는 서비스 사용할 수 없음 오류 (HTTP 오류 503) 오류가 발생 했습니다. 알 수 없는 전송 인코딩으로 인해.
번호숫자를 처리 하는 동안 구문 분석 오류가 발생 했습니다.
전제 조건필수 전제 조건이 없습니다.
QueueFull서비스 사용할 수 없음 오류 (HTTP 오류 503) 발생 했습니다. 응용 프로그램 요청 대기열이 꽉 서비스를 사용할 수 없습니다.
RequestLength요청 길이 한계를 초과 했습니다.
Timer_AppPool연결 요청을 큐에서 제거 하 고 처리 하는 서버 응용 프로그램에 대 한 응용 프로그램 풀 대기열에서 너무 오래 대기 때문에 만료 됩니다. 이 시간 제한 기간은 ConnectionTimeout입니다. 기본적으로이 값을 2 분으로 설정 됩니다.
Timer_ConnectionIdle연결이 만료 되어 계속 유휴 상태로. 기본 ConnectionTimeout 기간은 2 분입니다.
Timer_EntityBody요청 엔터티 본문이 도착 하기 전에 연결이 만료 되었습니다. 명확 하 게 요청에는 엔터티 본문이 있는 경우 HTTP API Timer_EntityBody 타이머를 켭니다. 처음에이 타이머의 제한 된 ConnectionTimeout 값 (일반적으로 2 분)으로 설정 됩니다. 이 요청에 대해 수신 되는 다른 데이터 표시 될 때마다 HTTP API 연결 두 분 (또는 ConnectionTimeout에 지정 된 대로)를 제공 하는 타이머를 다시 설정 합니다.
Timer_HeaderWait연결 요청에 대해 구문 분석 된 헤더 기본 제한인 2 분 보다 더 많은 시간이 소요 되므로 만료.
Timer_MinBytesPerSecond클라이언트가 적절 한 속도로 응답을 받지 못했기 때문에 연결에 만료 되었습니다. 응답 전송 속도가 기본값인 초당 240 바이트 보다 느렸습니다. MinFileBytesPerSec 메타 베이스 속성을 사용 하 여이 제어할 수 있습니다.
Timer_ReqQueue연결 요청을 큐에서 제거 하는 서버 응용 프로그램에 대 한 응용 프로그램 풀 대기열에서 너무 오래 대기 때문에 만료 됩니다. 이 시간 제한 기간은 ConnectionTimeout입니다. 기본적으로이 값을 2 분으로 설정 됩니다. Windows Vista 및 이후 버전에 특정 Windows Server 2008 및 이후 버전.
Timer_Response예약 되어 있습니다. 현재 사용 되지 않습니다.
Timer_SslRenegotiation연결에는 클라이언트와 서버 간에 SSL 재협상 2 분 기본 시간 제한 보다 오래 걸린 때문에 만료 되었습니다.
URLURL을 처리 하는 동안 구문 분석 오류가 발생 했습니다.
URL_Length최대 허용 크기를 초과 하는 URL.
동사동사를 처리 하는 동안 구문 분석 오류가 발생 했습니다.
Version_N/S버전에서 지원 되지 않는 오류 (HTTP 오류 505) 발생 했습니다.

맨 위로
참조
IIS HTTP 오류 로깅 위한 로깅 추가 필드를 추가 하는 방법에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
832975 IIS 6.0 및 IIS 7.0 Httperr #.log 파일에 기록 하기 위한 추가 속성이 됩니다.

경고: 이 문서는 자동으로 번역되었습니다.

속성

문서 ID: 820729 - 마지막 검토: 08/06/2016 02:00:00 - 수정: 11.0

Windows Server 2008 R2 Standard, Windows Server 2008 R2 Enterprise, Windows Server 2008 Enterprise, Windows Server 2012 R2 Standard, Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Essentials, Windows Server 2012 R2 for Embedded Systems, Windows Server 2012 R2 Foundation, Windows Server 2012 Standard, Windows Server 2012 Datacenter, Windows Server 2012 Essentials, Windows 10, Windows 10 Enterprise, released in July 2015, Windows 10 Pro, released in July 2015, Windows 10 Version 1511, Windows 8.1, Windows 8.1 Enterprise, Windows 8.1 Pro, Windows 8, Windows 8 Pro, Windows 8 Enterprise, Windows 7 Professional, Windows 7 Enterprise

  • kbhttphandlers kbhttp kbapi kberrmsg kbinfo kbmt KB820729 KbMtko
피드백