locked
Not able to logging MDX Query using httpmodule RRS feed

  • Question

  • User1589893805 posted

    Hi 

    We have hosted an Analysis Services data pump on IIS and it is working as expected where we are using Excel as a client.

    But the requirement is to log every MDX query when request drop in IIS where MSMD pump dll is hosted. For that I am using httpmodule and when we are trying to read request body using Request.InputStream we are getting issue but rest of the properties we are able to read like Request.ContentLength, Request.Headers, Request.HttpMethod.

    Below error and soap XML is getting when trying to read request payload using Request.InputStream:

    Error Message in Excel:

    "XML parsing failed at line 1, column 9: DTD is prohibited" 
    It means 500 - Internal server error..

    SOAP:

    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header><Version xmlns="http://schemas.microsoft.com/analysisservices/2008/engine/100" Sequence="400"/></soap:Header><soap:Body><Discover xmlns="urn:schemas-microsoft-com:xml-analysis"><RequestType>DISCOVER_PROPERTIES</RequestType><Restrictions><RestrictionList><PropertyName>DbpropMsmdSubqueries</PropertyName></RestrictionList></Restrictions><Properties><PropertyList/></Properties></Discover></soap:Body></soap:Envelope>

    Expected SOAP traced by Fiddler:

    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header><Session xmlns="urn:schemas-microsoft-com:xml-analysis" SessionId="CEF4BD2E-EE83-4571-B5B5-B27EDABBC983"/></soap:Header><soap:Body><Execute xmlns="urn:schemas-microsoft-com:xml-analysis"><Command><Statement>MDX Query</Statement></Command><Properties><PropertyList><Catalog></Catalog><Timeout>0</Timeout><Format>Native</Format><DbpropMsmdFlattened2>false</DbpropMsmdFlattened2><SafetyOptions>2</SafetyOptions><Dialect>MDX</Dialect><MdxMissingMemberMode>Error</MdxMissingMemberMode><DbpropMsmdOptimizeResponse>1</DbpropMsmdOptimizeResponse><DbpropMsmdActivityID>65856B36-998E-44D5-91C6-F6F99BAE2381</DbpropMsmdActivityID><DbpropMsmdRequestID>1532A70C-1C1B-4C6C-8A96-1751BB5FB624</DbpropMsmdRequestID><LocaleIdentifier>1033</LocaleIdentifier><DbpropMsmdMDXCompatibility>1</DbpropMsmdMDXCompatibility><DbpropMsmdSubqueries>2</DbpropMsmdSubqueries></PropertyList></Properties></Execute></soap:Body></soap:Envelope>

    Thanks

    Monday, September 2, 2019 8:11 AM

All replies

  • User-848649084 posted

    Could you please share your web.config file?

    Under which identity your application pool is running? which authentication you are using in iis? 

    Error Message in Excel:

    "XML parsing failed at line 1, column 9: DTD is prohibited" 
    It means 500 - Internal server error..

    To resolve this issue you could try below settings:

    • Open the SQL Management Studio and connect to the analysis database.
    • Go to your database and right-click the Roles folder.
    • Select a new role, give it a name and set the level of access you want to provide through the XMLA HTTP Access.

    Changing the account of the main website.

    Regards,

    Jalpa

    Tuesday, September 3, 2019 3:14 AM