This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Troubleshooting WikiPakk

Troubleshooting steps for the WikiPakk SharePoint page tree and breadcrumb.

This guide helps you troubleshoot the SharePoint page tree and breadcrumb navigation provided by WikiPakk.

Which version of WikiPakk am I using?

Click the Page Tree button to open the page tree panel.

In the panel, scroll down (if necessary) until you see the question mark (?) link.

Click the question mark (?) link to open the About dialog.

The about dialog shows the version (sample: 2.7.0.0 & 2.7.0).

Diagnosing issues in the page hierarchy

The SharePoint page tree gets hierarchy information from different sources, depending on whether it is showing regular SharePoint modern pages, or pages that have been migrated from Confluence to SharePoint.

For the hierarchy to work there need to be:

  • modern SharePoint pages
  • a page ID per page
  • a parent page ID per page

The page tree might be incomplete if any of those is missing.

Checking the hierarchy for pages that have been migrated from Confluence to SharePoint

Let’s assume the parent page of a page is missing in the page tree.

First, open the “aggregated-info” progress log files for the Confluence space this page was in and check that all pages have been migrated. If there are pages yet to be migrated, migrate them and check back if the page tree looks good after doing that.

If the issue persists, continue.

To diagnose the issue we first need to find out if the parent page has been migrated yet.

Open the page, whose parent page is missing, here it is arc42:

The Confluence page ID is part of the page URL. Copy this page ID. In the screenshot this is 2293795.

We are now going to look up the parent page ID and parent page.

Open the Site Pages library. Make sure to add the columns Confluence: Id (WikiTraccs) and Confluence: Parent Id (WikiTraccs) to the current view.

Filter the column Confluence:Id (WikiTraccs) for the page ID, here 2293795:

In the screenshot above the parent page ID is zero (0), which indicates this is a root page that has no parent page. This was the root page of a Confluence space. Note that there can be multiple such root pages per space.

Everything is fine in this case.

But imagine the parent page ID being 123456. If this was the case, do the following: filter the Confluence: Id (WikiTraccs) column for the parent page ID (here: 123456), to find the parent page.

Can no such parent page be found? The page has not yet been migrated and the tree is correctly showing no parent page. In this case, migrate the missing page.

Can the parent page be found? The page tree should display it. There might be an issue with the page tree if the parent page exists, but is not shown in the page tree. In this case, copy the log (see next section on how to do this), and send the log, the page ID, the parent page ID and the progress log files for the space to [email protected] for further diagnosis.

Export the page hierarchy for further diagnosis

In the page tree panel, click the question mark to open the About dialog:

In the About dialog, click Page tree diagnostics to expand the section, then click Collect diagnostic information.

Now text should appear in the text box. Copy all this text and send it to support upon request.

The page tree is not visible at all

If the page tree button and breadcrumb are completely missing from a SharePoint site, the WikiPakk application customizer might no longer be registered on that site. This can happen when an admin removes or re-deploys the app, or when the app catalog entry is retracted.

Check if the application customizer is present

You can verify whether the WikiPakk application customizer is active on a site by querying the SharePoint REST API for custom actions.

Build the URL by combining your site URL with the REST API path for user custom actions:

https://COMPANY.sharepoint.com/sites/YOURSITE/_api/Web/UserCustomActions

Replace COMPANY with your SharePoint tenant name, and YOURSITE with the name of the affected site.

Open this URL in the browser while logged in as a site admin. The response is an XML or JSON document listing all custom actions on that site.

Look for the WikiPakk application customizer GUID:

2d767101-dd5b-447d-bc25-03bd6191e469

Search the response for this GUID (use Ctrl+F in the browser). It should appear as a ClientSideComponentId value in one of the custom action entries, with Location set to ClientSideExtension.ApplicationCustomizer.

If the GUID is missing, the WikiPakk application customizer is not registered on this site. To fix this, re-add the WikiPakk app to the site:

  1. Go to the site’s Site Contents page.
  2. Check if WikiPakk is listed there. If it is not, add it from the app catalog.
  3. If it is listed but the custom action is still missing, remove the app and add it again.

After re-adding the app, reload any modern page on the site. The page tree button should appear again.

Check for permission issues using a WikiPakk web part

If the page tree is not showing up but the application customizer is present, permissions might be the cause. A quick way to check is to add one of the WikiPakk web parts to a page.

  1. Edit any modern page on the affected site.
  2. Add a web part and search for WikiPakk. You should see web parts like WikiPakk Page Tree Editor or WikiPakk Children Display.
  3. Insert one of them and observe the result.

If the web part renders normally, permissions are fine. The issue is likely elsewhere (check the browser console logs as described below).

If the web part shows an error, this points to a permission issue. The most common cause is that the current user does not have access to the tenant app catalog site where WikiPakk assets are hosted. See Guest Users Cannot See the Page Tree for instructions on granting the required access.

If no WikiPakk web parts appear when searching, the WikiPakk app has not been installed on this site or has not been deployed to the tenant app catalog.

How to get and copy the WikiPakk logs from the Browser console

The log can be found in the browser console.

To view and copy the log of the SharePoint page tree and breadcrumb follow these steps:

  1. open the Chrome browser
  2. open a modern SharePoint page where the page tree misbehaves
  3. open the Chrome developer tools: choose the three dot menu in the upper right corner, then More tools, then Developer tools; or simply press the F12 key
  4. the developer tools panel opens
  5. choose the Console tab
  6. enter wikipakk in the search box
  7. choose the levels drop down
  8. select all levels, including Verbose

Developert tools, showing log entries of WikiPakk

  1. reload the page, for example by pressing the F5 key

The console should now show lots of log entries from WikiPakk, like in above screenshot.

When being asked for, copy all those log entries and send them to [email protected].

1 - Troubleshooting WikiPakk License Issues

What if the “Could not find a valid license” message is shown despite having a valid license key in place?

How applying the WikiPakk license is supposed to work

After installing WikiPakk and adding it to a site it will show a red banner with the message Could not find a valid license, which is correct since there is no license, yet.

After purchasing a license for WikiPakk you’ll receive a license key.

The license key needs to be stored in a place in SharePoint where WikiPakk can find it. There are multiple options for storing the license key which are documented in this article: WikiPakk Licensing.

Click the Retry link in the red box and the red box should disappear.

Make sure to test with at least one regular user account that for them the red box also disappears to rule out permission-related issues.

Read further if the red box and note do not disappear.

What if WikiPakk cannot find the license?

If some users still see the red box with the Could not find a valid license message then for some reason WikiPakk cannot either find the license in any of the supported places, or cannot refresh the license.

WikiPakk allows to troubleshoot that.

We’ll open the browser’s developer tools to access the WikiPakk log messages. The log contains information about each step WikiPakk makes.

Here’s how to access the log via the Chrome browser’s developer tools:

Note: The Edge browser provides a similar way to access the developer tools, although the menu options you have to select differ a bit.

Above animation shows the following:

  1. in Chrome browser, have a SharePoint site open where WikiPakk is installed
  2. expand the Page Tree to view the red licensing error
  3. click the Retry link to check if WikiPakk can refresh the license; it can’t
  4. open Chrome’s developer tools via Three Dot Menu ⇒ More tools ⇒ Developer Tools
  5. in the Console section of the developer tools, enter wikipakk license into the search box; WikiPakk licensing-related log messages are shown
  6. the log messages are selected and can be copied and pasted, e.g. to support emails

What do those log messages mean?

You might be able to figure out what’s wrong on your own. The following sections provide information about commonly encountered log messages.

License found in memory

[LicenseProcess] Using memory-cached license info

There is a cached license available in memory. Reloading the page in the browser clears the memory cache.

Valid license found in local storage

[LicenseProcess] Found license in local storage, good (valid from Wed Jun 19 2024 09:21:15 GMT+0200 (Central European Summer Time) to Fri Jul 19 2024 09:21:15 GMT+0200 (Central European Summer Time))

WikiPakk found a valid license in the browser’s local storage. This should be a regular case.

Cooldown mode

[LicenseProcess] Got no license in local storage, need to retrieve one
[LicenseProcess] Last license check was 16.7949 minutes ago, cooldown is 120 minutes
[LicenseProcess] We are in license check cooldown mode

When no license can be found or needs to be refreshed, WikiPakk will try to find or refresh one every so often.

After each check WikiPakk goes into cooldown mode, so it might take a couple of hours for a newly stored license to be picked up automatically.

You can manually force a check at any time, though. Click the Retry link in the red box. This forces a license key lookup and ignores the cooldown mode.

No license found at all


[SharePointLicenseSource] Description field of Site Pages library is empty
[LicenseProcess] Current site has no license configured
[SharePointLicenseSource] Looking up tenant property wikipakk.licensesiteurl
[SharePointLicenseSource] Tenant property wikipakk.licensesiteurl has value: {"odata.metadata":"https://contoso.sharepoint.com/sites/it-config-site/_api/$metadata#Edm.Null","odata.null":true}
[LicenseProcess] Configured dedicated site has no license configured.
[SharePointLicenseSource] Trying to get license info from default site WikiPakkConfiguration
[SharePointLicenseSource] Determined URL of potential default site: https://contoso.sharepoint.com/sites/it-config-site
[SharePointLicenseSource] Trying to get license info from site https://contoso.sharepoint.com/sites/WikiPakkConfiguration
[SharePointLicenseSource] Trying to get license info from Site Pages library
POST https://contoso.sharepoint.com/sites/WikiPakkConfiguration/_api/contextinfo 404 (Not Found)
[SharePointLicenseSource] Got an exception when connecting to the other web at 'https://contoso.sharepoint.com/sites/WikiPakkConfiguration': Error: Error making HttpClient request in queryable [404]  ::> ; check the tenant property 'wikipakk.licensesiteurl'
[LicenseProcess] Default site has no license configured.
[LicenseProcess] Could not find a license that is either valid or not near expiration

No license can be found. This is the case initially, right after adding WikiPakk to a site.

WikiPakk tries every location where a license might be found:

  1. local site, Site Pages description field
  2. site configured via tenant property wikipakk.licensesiteurl, Site Pages description field
  3. well-known WikiPakk config site /sites/WikiPakkConfiguration (if it exists), Site Pages description field

The log shows each of those steps.

Expired license needs a refresh

The logs will show the need to refresh an expired license key and the result of this operation.