DSCResources/MSFT_xIisLogging/MSFT_xIisLogging.schema.mof

[ClassVersion("1.0.0")]
class MSFT_xLogCustomField
{
    [Required, Description("Name for the custom field")] String LogFieldName;
    [Required, Description("Name for the source type")] String SourceName;
    [Required, Description("Specify the source type"), ValueMap{"RequestHeader","ResponseHeader","ServerVariable"},Values{"RequestHeader","ResponseHeader","ServerVariable"}] String SourceType;
};
 
[ClassVersion("1.0.0"), FriendlyName("xIisLogging")]
class MSFT_xIisLogging : OMI_BaseResource
{
    [Key, Description ("The directory to be used for logfiles")] String LogPath;
    [Write, Description ("The W3C logging fields"), ValueMap{"Date","Time","ClientIP","UserName","SiteName","ComputerName","ServerIP","Method","UriStem","UriQuery","HttpStatus","Win32Status","BytesSent","BytesRecv","TimeTaken","ServerPort","UserAgent","Cookie","Referer","ProtocolVersion","Host","HttpSubStatus"}, Values{"Date","Time","ClientIP","UserName","SiteName","ComputerName","ServerIP","Method","UriStem","UriQuery","HttpStatus","Win32Status","BytesSent","BytesRecv","TimeTaken","ServerPort","UserAgent","Cookie","Referer","ProtocolVersion","Host","HttpSubStatus"}] String LogFlags[];
    [Write, Description ("How often the log file should rollover"), ValueMap{"Hourly","Daily","Weekly","Monthly","MaxSize"}, Values{"Hourly","Daily","Weekly","Monthly","MaxSize"}] String LogPeriod;
    [Write, Description ("How large the file should be before it is truncated")] String LogTruncateSize;
    [Write, Description ("Use the localtime for file naming and rollover")] Boolean LoglocalTimeRollover;
    [Write, Description ("Format of the Logfiles. Only W3C supports LogFlags"), ValueMap{"IIS","W3C","NCSA"}, Values{"IIS","W3C","NCSA"}] String LogFormat;
    [Write, EmbeddedInstance("MSFT_xLogCustomField"), Description("Custom logging field information in the form of an array of embedded instances of MSFT_xLogCustomField CIM class")] String LogCustomFields[];
};