Viewtracker Cloud Data Storage
This article explains how the data collected by the Viewtracker app is stored.
Glossary
CLIENT_KEY
: Unique key of a Confluence instance. Every Confluence instance has its own table.accountId
(Account Id): This is how Viewtracker Cloud identifies each user without storing any PII data (for example, the username or the full name).The ID will look like this:
557058:a1641b35-a550-4a7a-a3cc-84fe0959b999
.
Data storage
The user's account ID
(USER_ID) is stored unless the Data Privacy setting is set to "Extended Privacy Mode".
If tracked, this user ID is stored in the selected app data residency in a database managed by bitvoodoo ag.
All other user information in this document will only be stored with Atlassian.
Viewtracker Database Table
Views
The table VIEWS_{CLIENT_KEY} looks like this:
Column | Type | Description |
---|---|---|
USER_ID | VARCHAR(255) | accountId of the user “Anonymous” for users without Confluence login |
CONTENT_ID | BIGINT | ID of the viewed content |
CONTENT_TYPE | TINYINT | attachment, blog post or page |
SPACE_KEY | VARCHAR(255) | Which space does the content “live” in? This is needed for filters and the Space Report |
IS_PROTECTED_USER | Boolean | Is the viewer a protected user? |
VIEW_TIME | datteime | When did the view occur? |
IS_TRASH_MARKED | Boolean | Is this content marked as trashed? If yes, it will be deleted by Confluence within the next 30 days.
|
DELETION_TIME | datteime | When was the content deleted? |
PARENT_CONTENT_ID | BIGINT | ID of the parent page |
CONTENT_NAME | VARCHAR(255) | Used for sorting and filtering in the Space/Global Report |
Content changes
The table CONTENT_CHANGES_{CLIENT_KEY} looks like this:
Column | Type | Description |
---|---|---|
CONTENT_ID | BIGINT | ID of the tracked content |
PARENT_CONTENT_ID | BIGINT | ID of the parent page (important for attachments) |
VERSION | TINYINT | Version number of the page, attachment or blog post |
CONTENT_TYPE | INT | What was changed: blog post, page, comment, attachment |
EVENT_TIME | DATETIME | When did the change occur? |
AUTHOR | VARCHAR(255) | AccountId of the user |
PROTECTED_USER | Boolean | Is the user who initiated this event a protected user? |
EVENT_TYPE | TINYINT | What change was carried out: "created”, “edited” or “removed" |
SPACE_KEY | VARCHAR(255) | Space key of the space |
CONTENT_NAME | VARCHAR(255) | Used for sorting and filtering in Space/Global Report |
FILE_SIZE | BIGINT | File size, only used for attachments |
Excluded spaces
If spaces were excluded from tracking, the table BITVOODOO_EXCLUDED_SPACES looks like this:
Column | Type | Description |
---|---|---|
CLIENT_KEY | VARCHAR(255) | Unique key of a Confluence instance. Every Confluence instance has its own table. |
SPACE_KEY | VARCHAR(255) | The space key of the space |
EXCLUSION_DATE | Datetime | When the space was excluded from tracking |
USER_ID | VARCHAR(255) | The accountId of the user who excluded the space Looks something like this: 557058:a1641b35-a550-4a7a-a3cc-84fe0959b999 |
Excluded users
If users were excluded from tracking, the table BITVOODOO_EXCLUDED_USERS looks like this:
Column | Type | Description |
---|---|---|
CLIENT_KEY | VARCHAR(255) | Unique key of a Confluence instance. Every Confluence instance has its own table. |
USER_ID | VARCHAR(255) | The accountId of the excluded user |
EXCLUSION_DATE | INTDatetime | When the user was excluded from tracking |
ADMIN_USER_ID | VARCHAR(255) | The accountId of the user who excluded the user Looks something like this: 557058:a1641b35-a550-4a7a-a3cc-84fe0959b999 |
Search Analytics Database Table
General Search
The table SEARCHES_{CLIENT_KEY} looks like this:
Column | Type | Description |
---|---|---|
SEARCHER | VARCHAR(255) | The accountId of the user |
PROTECTED_USER | Boolean | Is the searcher a protected user? |
SEARCH_TIME | datetime | When the search was performed |
RESULTS | INT | number of search results |
SEARCH_TERM | VARCHAR(255) | What the user searched for (the simple search term) |
QUERY | VARCHAR(255) | The whole query (including any filters) |
ENTITY_TYPE_SPACE | Boolean | Were spaces included in the search? |
ENTITY_TYPE_PAGE | Boolean | Were pages included in the search? |
ENTITY_TYPE_BLOGPOST | Boolean | Were blogs included in the search? |
ENTITY_TYPE_COMMENT | Boolean | Were comments included in the search? |
ENTITY_TYPE_ATTACHMENT | Boolean | Were attachments included in the search? |
Search for labels
The table SEARCHED_LABELS_{CLIENT_KEY} looks like this:
Column | Type | Description |
---|---|---|
SEARCH_ID | BIGINT | The individual ID of the search; the primary Key |
LABEL | VARCHAR(255) | Which labels were searched for |
Search for spaces
The table SEARCHED_SPACES_{CLIENT_KEY} looks like this:
Column | Type | Description |
---|---|---|
SEARCH_ID | BIGINT | The individual ID of the search; the primary Key |
SPACE_KEY | VARCHAR(255) | The space key within the search request |
The data represented in the tables is also part of the CSV data export.
If you need the users' names instead of Account IDs, please consult https://bitvoodoo-stage.atlassian.net/wiki/spaces/Docu/pages/2108784641 and Enable the Export of the Users' Names