Office 365 import is failing during the 'Usage' step (Usage.xml)

Office 365 import is failing during the 'Usage' step (Usage.xml)

Summary

This article is useful for resolving errors seen during the 'usage' step of the O365 import

Symptoms

We have configured the O365 adapter, but when we try and run an import we see a failure related to the 'Usage' step. What is wrong with our set up?

 

Cause

This issue is related to the 'Usage.xml' step of our O365 adapter. This is a known issue caused by throttling on Microsoft's servers.

After discussing this with Microsoft's engineering team, our engineering team learned that the "LastLoginDate" for Exchange and Skype are not actually the last logon dates but rather they are the last sync dates with AD. This amounts to the last time a password was reset.

Currently, there is no way to get the usage data using Powershell, however, our engineering team is working on developing this so that the adapter can collect usage info.

 

Resolution

This issue was fixed with a new Microsoft 365 connector, released in FNMS 2019 R1. 

 

Workaround

Due to the returned 'usage' not being usage but instead, a last login date - the Usage.xml part of the reader can be safely disabled as it doesn't add any value to the imports at present.

Customers seeing this issue can try resolving it by using the following workaround.

FlexNet Manager Suite Cloud (SaaS) workaround

On the beacon which is configured to collect your O365 data:
  1. Open the ImportProcedures\Inventory\Reader folder by default at C:\ProgramData\Flexera Software\Compliance\ImportProcedures\Inventory\Reader
  2. Copy the Microsoft Office 365 folder up two directories, and into the ObjectAdapters\Reader folder. Note: You may need to create the Reader folder inside ObjectAdapters.

    This would be the relative location of ..\..\ObjectAdapters\Reader from the Inventory\Reader folder location (by default: C:\ProgramData\Flexera Software\Compliance\ImportProcedures\ObjectAdapters\Reader).
  3. Copy the Importer.xml from the Inventory folder to ObjectAdapters.
  4. Rename the Microsoft Office 365 to Cloud Microsoft Office 365

  5. You should now have the following folder structure:
    \---ObjectAdapters
    	|   Importer.xml
        \---Reader
            |
            \---Cloud Microsoft Office 365
                    InstallerEvidence.xml
                    License.xml
                    Logic.ps1
                    readerV2.config
                    Usage.xml
                    User.xml
  6. Open the file ObjectAdapters\Reader\Cloud Microsoft Office 365\readerV2.config in a text editor.
  7. Remove the highlighted Reader line for the Usage procedure as below:
    <Readers>
    <Reader FileName="User.xml" ProcedureName="Computer" /> 
    <Reader FileName="InstallerEvidence.xml" ProcedureName="Evidence" /> 
    <Reader FileName="License.xml" ProcedureName="LicenseCreateUpdate" />
    <Reader FileName="Usage.xml" ProcedureName="Usage" />
    </Readers>
    
  8. The Readers section should now look like this:
    <Readers>
    <Reader FileName="User.xml" ProcedureName="Computer" /> 
    <Reader FileName="InstallerEvidence.xml" ProcedureName="Evidence" /> 
    <Reader FileName="License.xml" ProcedureName="LicenseCreateUpdate" />
    </Readers>
  9. Save the file, and create a new Powershell connection in the Beacon UI, specifying Cloud Microsoft Office 365 as the Source Type and the credentials for the Office 365 connection. Then attempt the import again. If the issue is still occurring, contact Flexera support.

FlexNet Manager Suite On-Premise workaround

This must be performed at a top level, from the Batch Server to prevent the reader from being reverted by the parent connection.

  1. Open the file C:\ProgramData\Flexera Software\Compliance\ImportProcedures\Inventory\Reader\Microsoft Office 365\readerV2.config in a text editor.
  2. Remove the highlighted Reader line for the Usage procedure as below:
    <Readers>
    <Reader FileName="User.xml" ProcedureName="Computer" /> 
    <Reader FileName="InstallerEvidence.xml" ProcedureName="Evidence" /> 
    <Reader FileName="License.xml" ProcedureName="LicenseCreateUpdate" />
    <Reader FileName="Usage.xml" ProcedureName="Usage" />
    </Readers>
    
  3. The Readers section should now look like this:
    <Readers>
    <Reader FileName="User.xml" ProcedureName="Computer" /> 
    <Reader FileName="InstallerEvidence.xml" ProcedureName="Evidence" /> 
    <Reader FileName="License.xml" ProcedureName="LicenseCreateUpdate" />
    </Readers>
  4. Save the file, attempt the import again. If the issue is still occurring, contact Flexera support.
Labels (1)
Was this article helpful? Yes No
No ratings
Version history
Revision #:
2 of 2
Last update:
‎Feb 07, 2020 11:31 AM
Updated by: