Plugins Usage Tracking

Name Plugins Usage Tracking
Version 0.9
Availability Confluence v2.9.x
Author(s) Bruno Blaise
Price Free
License EUPL
IssueTracking http://developer.atlassian.com/jira/browse/CPUT
Download JAR digit-pluginsusagetracking-0.9.jar
Download Source digit-pluginsusagetracking-source-0.9.zip

Description/Features

Allows the tracking of usage of the plugins deployed on this Confluence instance.  This plugin can help administrators to pinpoint plugins which can be safely disabled and/or uninstalled of a Confluence instance. It also allows to know where a particular macro is used.

Watch out
This plugin is not compatible with clustered environments. In the case you would like to use it in a cluster, make sure to rebuild the plugin index on a node before analysing the result computed by this plugin. Also, keep in mind that plugins need to be uninstall on each node of a cluster if you want to do so.

Installation

  1. In the 'Administration' section of Confluence, click the Plugins link.
  2. Use the 'Browse' button to find the plugin jar you wish to install.
  3. Select the jar file and click 'Open'.
  4. Click the 'Upload' button.
  5. The plugin will be uploaded from your machine to Confluence, and will be automatically installed.

Uninstallation

You can remove this plugin by following the regular procedure for uninstallation of plugins. Please note that this plugin will create a Lucene index. You may want to also remove this index. To do so, browse into the folder <Confluence home>/index/plugin, then remove the subfolder ecpluginsusage.  

Usage

There is no macro bundled in this plugin. Once it is installed, it will start gathering information on macro used in page when they are added or edited.

If you install the plugin on a Confluence instance containing documents, then rebuild the plugin index for accurate result.

The plugin offers screens in the Administration section of Confluence. A new link is made available : Plugins Usage.

When you click on the link, you will be presented a page allowing you to rebuild the index and showing you the usage of plugins containing macros by spaces. The plugins are in the same order as the Plugin Management's one.

You can click on a specific space for a given plugin to get the usage of macros. You will be able to see the number of pages containing a specific macro, for the selected space.

Then you can go one lever deeper to see which page actually uses a selected macro.

Version History

0.8 1st release, 1st public release
0.9 Resolved issue CPUT-1

Open Issues

None currently.

Screenshots

Documentation

Parsing

  • Indexing occus as each page is saved to the database
  • Every text that matches the pattern "{macroname}" is indexed.
  • Thus, as new plugins or macros are added, a full re-index is not needed. It is just a matter of processing the existing indexes.
  • There are no exceptions made for comments, {noformat}, {code} or other container blocks: all instances of the macro name, whether or not it is a functioning macro, are indexed.
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Oct 03, 2008

    Tim Eddelbuettel says:

    Looks interesting. I will try.

    Looks interesting. I will try.

  2. Oct 05, 2008

    David Matsumoto says:

    This looks to be a very useful plugin for monitoring plugin/macro usage, do you ...

    This looks to be a very useful plugin for monitoring plugin/macro usage, do you believe it is possible to use in older versions such as 2.7.3?

    1. Oct 06, 2008

      Issa Gorissen says:

      Hi David, I haven't tested it under v2.7.3, but please do so and report so that...

      Hi David,

      I haven't tested it under v2.7.3, but please do so and report so that I can update the 'Availability' field of this plugin. Basically, just install it, add or edit a page by using a specific macro. Then go in tha Administration part and check that the displayed stats show up your newly added/edited page.

      1. Oct 07, 2008

        David Matsumoto says:

        Nope, doesn't appear to be compatible with 2.7.3, at least our install. Got thi...

        Nope, doesn't appear to be compatible with 2.7.3, at least our install. Got this error:

        A required class was missing: Plugins Usage Report. Please check that you have all of the required dependencies.
        com.atlassian.plugin.predicate.ModuleDescriptorPredicate

        I would try to compile it in maven using the 2.7 Confluence, but it doesn't appear to have been compiled that way.

        1. Feb 04

          Thomas Mitchell says:

          Seems to work fine with 2.8.2 however.

          Seems to work fine with 2.8.2 however.

  3. Mar 02

    James Mortimer says:

    Created two issues: http://developer.atlassian.com/jira/browse/CPUT-1 http://de...

    Created two issues:

    http://developer.atlassian.com/jira/browse/CPUT-1 http://developer.atlassian.com/jira/browse/CPUT-2

    But was unable to assign them to anyone, so I'm commenting here to make sure that Issa is notified.

    1. Mar 03

      Issa Gorissen says:

      Thx James - indeed, JIRA did not notified us.

      Thx James - indeed, JIRA did not notified us.

      1. Mar 03

        James Mortimer says:

        NOTE FOR CONFLUENCE ADMIN: THIS ENTIRE COMMENT THREAD IS RESOLVED AND CAN BE DEL...
        NOTE FOR CONFLUENCE ADMIN: THIS ENTIRE COMMENT THREAD IS RESOLVED AND CAN BE DELETED
  4. Mar 03

    James Mortimer says:

    Comment from Issa: For the moment, every text looking like this {macroname} is ...

    Comment from Issa:

    For the moment, every text looking like this {macroname} is being indexed. Thus, to fulfill your request, this is just a matter of processing the indexes.

    Question: Are you really indexing {macroname} only? What about {macroname:key=value|key2=value2} etc? Are those indexed? What about information in comments or {noformat} or {code} blocks? Are those indexed?

    • I'll add a section to the doc above. You could reply to my comment, or augment the section above, depending on if you prefer to interact as more of a 'forum chatter' or a 'wiki author'.
    1. Mar 04

      Issa Gorissen says:

      Macro tag parsing is handled the same way Confluence does. I have copied their c...

      Macro tag parsing is handled the same way Confluence does. I have copied their code for that. So it should handle {noformat} and macros inside those blocks and it should also handle macro with parameters.