영어로 읽기

다음을 통해 공유


클라이언트 로깅(Windows Media Format 11 SDK)

판독기 개체는 서버에서 데이터를 읽을 때 로깅 정보를 서버로 보냅니다. 콘텐츠 공급자는 일반적으로 이 정보를 사용하여 서비스 품질을 측정하거나, 청구 정보를 생성하거나, 광고를 추적합니다. 로깅 정보에는 개인 데이터가 포함되지 않습니다.

애플리케이션은 판독기 개체에서 IWMReaderAdvanced::SetClientInfo 메서드를 호출하여 기록되는 정보 중 일부를 지정할 수 있습니다. 예를 들어 사용자 에이전트 문자열, 플레이어 애플리케이션의 이름 또는 플레이어를 호스트하는 웹 페이지를 지정할 수 있습니다.

로깅 정보에는 세션을 식별하는 GUID가 포함됩니다. 기본적으로 판독기는 익명 세션 ID를 생성합니다. 필요에 따라 판독기는 현재 사용자를 고유하게 식별하는 ID를 대신 보낼 수 있습니다. 이 기능을 사용하도록 설정하려면 값이 TRUE인 IWMReaderAdvanced2::SetLogClientID 메서드를 호출합니다.

원래 서버 외에도 다른 서버로 로깅 정보를 보내도록 판독기 개체를 구성할 수 있습니다. 이렇게 하려면 서버의 URL 을 사용하여 IWMReaderNetworkConfig::AddLoggingUrl 메서드를 호출합니다. 이 URL은 HTTP GET 및 POST 요청을 처리할 수 있는 스크립트 또는 실행 파일을 가리킵니다. 멀티캐스트 및 로깅 광고 에이전트(wmsiislog.dll)를 사용하거나 사용자 지정 ASP 또는 CGI 스크립트를 작성하여 로그 데이터를 받을 수 있습니다.

참고

logURL 특성을 사용하여 서버 쪽 재생 목록을 만들어 동일한 기능을 얻을 수 있습니다.

 

판독기 개체가 로그를 보내면 다음을 수행합니다.

  1. 빈 GET 요청을 서버에 보냅니다.
  2. 다음 문자열 중 하나에 대한 서버 응답을 구문 분석합니다.
    • <body><h1>NetShow ISAPI Log Dll</h1>
    • <body><h1>WMS ISAPI Log Dll/0.0.0.0</h1> 여기서 "0.0.0.0"은 유효한 버전 번호입니다.
  3. 로그 정보를 사용하여 POST 요청을 보냅니다.

다음 코드는 로깅 정보를 수신하고 파일에 쓰는 예제 ASP 스크립트를 보여 줍니다.

<html>
<body>
<h1>WMS ISAPI Log Dll/9.00.00.00.00</h1>
<%@ Language=VBScript %>
<%
  Dim temp, i, post, file, fso

  ' Convert the binary data to a string.
  For i = 1 To Request.TotalBytes
    temp = Request.BinaryRead(1)
    pose = pose & Chr(AscB(temp))
  Next

  Set fso = createobject("Scripting.FileSystemObject")
  Set file = fso.OpenTextFile("C:\log.txt", 8, TRUE)

  file.writeline Now
  file.writeline post
  file.writeBlankLines 2 
%>
</body>
</html>

로깅 정보를 수신하도록 여러 서버를 지정할 수 있습니다. 각 URL 을 사용하여 AddLoggingUrl 을 한 번만 호출합니다. 로그를 수신하는 서버 목록을 지우려면 IWMReaderNetworkConfig::ResetLoggingUrlList 메서드를 호출합니다.

네트워크 기능 구현

IWMReaderAdvanced 인터페이스

IWMReaderAdvanced2 인터페이스