estructura de HTTP_LOGGING_INFO (http.h)
La estructura HTTP_LOGGING_INFO se usa para habilitar el registro del lado servidor en un grupo de direcciones URL o en una sesión de servidor.
Esta estructura debe usarse al establecer o consultar HttpServerLoggingProperty en una sesión de grupo de direcciones URL o servidor.
Sintaxis
typedef struct _HTTP_LOGGING_INFO {
HTTP_PROPERTY_FLAGS Flags;
ULONG LoggingFlags;
PCWSTR SoftwareName;
USHORT SoftwareNameLength;
USHORT DirectoryNameLength;
PCWSTR DirectoryName;
HTTP_LOGGING_TYPE Format;
ULONG Fields;
PVOID pExtFields;
USHORT NumOfExtFields;
USHORT MaxRecordSize;
HTTP_LOGGING_ROLLOVER_TYPE RolloverType;
ULONG RolloverSize;
PSECURITY_DESCRIPTOR pSecurityDescriptor;
} HTTP_LOGGING_INFO, *PHTTP_LOGGING_INFO;
Members
Flags
Estructura HTTP_PROPERTY_FLAGS que especifica si la propiedad está presente.
LoggingFlags
Las marcas de registro opcionales cambian el comportamiento de registro predeterminado.
Estos pueden ser uno o varios de los siguientes valores de HTTP_LOGGING_FLAG :
SoftwareName
Cadena de nombre de software opcional usada en el registro de tipos W3C. Este nombre no se usa para otros tipos de registro. Si este parámetro es NULL, la API del servidor HTTP registra una cadena predeterminada.
SoftwareNameLength
Longitud, en bytes, del nombre de software. La longitud no puede ser mayor que MAX_PATH.
Si el miembro SoftwareName es NULL, esta longitud debe ser cero.
DirectoryNameLength
Longitud, en bytes, del nombre del directorio. La longitud no puede ser mayor que 424 bytes.
DirectoryName
Directorio de registro en el que se crean los archivos de registro. La cadena de directorio debe ser una ruta de acceso completa, incluida la letra de unidad.
Las aplicaciones pueden usar una ruta de acceso UNC a una máquina remota para habilitar el registro UNC.
Format
Miembro de la enumeración HTTP_LOGGING_TYPE especificando uno de los siguientes formatos de archivo de registro.
Fields
Los campos que se registran cuando el formato se establece en W3C. Pueden ser uno o varios de los valores de HTTP_LOG_FIELD_ Constantes .
Cuando el formato de registro es W3C es , las aplicaciones deben especificar los campos de registro; de lo contrario, no se registran campos.
pExtFields
Reservado. Establezca en 0 (cero) o NULL.
NumOfExtFields
Reservado. Establezca en 0 (cero) o NULL.
MaxRecordSize
Reservado. Establezca en 0 (cero) o NULL.
RolloverType
Uno de los siguientes miembros de la enumeración HTTP_LOGGING_ROLLOVER_TYPE especifica los criterios para la sustitución de archivos de registro.
RolloverSize
Tamaño máximo, en bytes, después del cual se revierte el archivo de registro. Un valor de HTTP_LIMIT_INFINITE indica un tamaño ilimitado. El valor mínimo no puede ser menor que HTTP_MIN_ALLOWED_LOG_FILE_ROLLOVER_SIZE (1024 * 1024).
Este campo solo se usa para el tipo de sustitución HttpLoggingRolloverSize y debe establecerse en cero para todos los demás tipos.
Cuando el tipo de sustitución es HttpLoggingRolloverSize, las aplicaciones deben especificar el tamaño máximo del archivo de registro.
pSecurityDescriptor
Descriptor de seguridad que se aplica al directorio de archivos de registro y a todos los subdirectorios. Si este miembro es NULL, se usa la ACL predeterminada del sistema o la ACL se hereda del directorio primario.
Comentarios
La propiedad HttpServerLoggingProperty establece uno de los cuatro tipos de registro del lado servidor: HttpLoggingTypeW3C, HttpLoggingTypeIIS, HttpLoggingTypeNCSA o HttpLoggingTypeRaw. Cuando esta propiedad se establece en una sesión de servidor, funciona como forma centralizada de registro para todos los grupos de direcciones URL de esa sesión de servidor. Las solicitudes que se enrutan a uno de los grupos de direcciones URL de la sesión del servidor se registran en un archivo de registro centralizado. Los parámetros de configuración del archivo de registro se pasan en la estructura HTTP_LOGGING_INFO de la llamada a HttpSetServerSessionProperty.
Cuando esta propiedad se establece en un grupo de direcciones URL, el registro solo se realiza en las solicitudes que se enrutan al grupo de direcciones URL. Los archivos de registro se crean cuando la solicitud llega a la sesión del grupo de direcciones URL o del servidor, no se crean cuando se configura el registro.
Las aplicaciones deben asegurarse de que el directorio especificado en el miembro DirectoryName sea único.
Los nombres de los archivos de registro se basan en el tipo de sustitución especificado. En la tabla siguiente se muestran las convenciones de nomenclatura para los archivos de registro.
Formato | Tipo de sustitución | Patrón de nombre de archivo |
---|---|---|
Formato de registro de Microsoft IIS | Size | inetsvnn.log |
Cada hora | inyymmddhh.log | |
Diario | inyymmdd.log | |
Cada semana | inyymmww.log | |
Mensual | inyymm.log | |
Formato de archivo de registro común de NCSA | Size | ncsann.log |
Cada hora | ncyymmddhh.log | |
Diario | ncyymmdd.log | |
Cada semana | ncyymmww.log | |
Mensual | ncyymm.log | |
Formato de archivo de registro extendido W3C | Size | extendnn.log |
Cada hora | exyymmddhh.log | |
Diario | exyymmdd.log | |
Cada semana | exyymmww.log | |
Mensual | exyymm.log |
Las letras aaaa, mm, ww, dd, hh y nn de la tabla representan los dígitos siguientes:
- yy: representación de dos dígitos del año.
- mm: representación de dos dígitos del mes.
- ww: representación de dos dígitos de la semana.
- dd: representación de dos dígitos del día.
- hh: representación de dos dígitos de la hora en notación de 24 horas.
- nn: representación de dos dígitos de la secuencia numérica.
Tenga en cuenta que, en la API http versión 2.0, httpSendHttpResponse y HttpSendResponseEntityBody se han revisado para permitir que las aplicaciones pasen una estructura de HTTP_LOG_FIELDS_DATA para que se pueda registrar la respuesta. Establecer la propiedad HttpServerLoggingProperty en una sesión de servidor o un grupo de direcciones URL no significa que se registren las respuestas HTTP. El registro en el grupo de direcciones URL o la sesión del servidor no tendrá lugar a menos que las llamadas a HttpSendResponseEntityBody y HttpSendHttpResponse incluyan una estructura de HTTP_LOG_FIELDS_DATA opcional. Para obtener más información, consulte el tema HTTP_LOG_FIELDS_DATA .
Para obtener información sobre los formatos de archivo de registro, consulte el tema Formatos de archivo de registro de IIS.
Requisitos
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Encabezado | http.h |
Consulte también
Estructuras de la API de servidor HTTP versión 2.0