Sharepoint

SharePoint is a web-based collaborative platform that integrates with Microsoft Office. Launched in 2001, SharePoint is primarily sold as a document management and storage system, but the product is highly configurable and usage varies substantially among organizations.

Available solutions




This template is for Zabbix version: 6.2
Also available for: 6.0 5.4

Source: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/sharepoint_http?at=release/6.2

Microsoft SharePoint by HTTP

Overview

For Zabbix version: 6.2 and higher
SharePoint includes a Representational State Transfer (REST) service. Developers can perform read operations from their SharePoint Add-ins, solutions, and client applications, using REST web technologies and standard Open Data Protocol (OData) syntax. Details in https://docs.microsoft.com/ru-ru/sharepoint/dev/sp-add-ins/get-to-know-the-sharepoint-rest-service?tabs=csom

This template was tested on:

  • SharePoint Server, version 2019

Setup

See Zabbix template operation for basic instructions.

Create a new host. Define macros according to your Sharepoint web portal. It is recommended to fill in the values of the filter macros to avoid getting redundant data.

Zabbix configuration

No specific Zabbix configuration is required.

Macros used

Name Description Default
{$SHAREPOINT.GET_INTERVAL}

-

1m
{$SHAREPOINT.LLD.FILTER.FULL_PATH.MATCHES}

Filter of discoverable dictionaries by full path.

^/
{$SHAREPOINT.LLD.FILTER.FULL_PATH.NOT_MATCHES}

Filter to exclude discovered dictionaries by full path.

CHANGE_IF_NEEDED
{$SHAREPOINT.LLD.FILTER.NAME.MATCHES}

Filter of discoverable dictionaries by name.

.*
{$SHAREPOINT.LLD.FILTER.NAME.NOT_MATCHES}

Filter to exclude discovered dictionaries by name.

CHANGE_IF_NEEDED
{$SHAREPOINT.LLD.FILTER.TYPE.MATCHES}

Filter of discoverable types.

FOLDER
{$SHAREPOINT.LLD.FILTER.TYPE.NOT_MATCHES}

Filter to exclude discovered types.

CHANGE_IF_NEEDED
{$SHAREPOINT.LLD_INTERVAL}

-

3h
{$SHAREPOINT.MAX_HEALT_SCORE}

Must be in the range from 0 to 10

in details: https://docs.microsoft.com/en-us/openspecs/sharepoint_protocols/ms-wsshp/c60ddeb6-4113-4a73-9e97-26b5c3907d33

5
{$SHAREPOINT.PASSWORD}

-

``
{$SHAREPOINT.ROOT}

-

/Shared Documents
{$SHAREPOINT.URL}

Portal page URL. For example http://sharepoint.companyname.local/

``
{$SHAREPOINT.USER}

-

``

Template links

There are no template links in this template.

Discovery rules

Name Description Type Key and additional info
Directory discovery

-

SCRIPT sharepoint.directory.discovery

Preprocessing:

- DISCARD_UNCHANGED_HEARTBEAT: 6h

Filter:

AND

- {#SHAREPOINT.LLD.NAME} MATCHES_REGEX {$SHAREPOINT.LLD.FILTER.NAME.MATCHES}

- {#SHAREPOINT.LLD.NAME} NOT_MATCHES_REGEX {$SHAREPOINT.LLD.FILTER.NAME.NOT_MATCHES}

- {#SHAREPOINT.LLD.FULL_PATH} MATCHES_REGEX {$SHAREPOINT.LLD.FILTER.FULL_PATH.MATCHES}

- {#SHAREPOINT.LLD.FULL_PATH} NOT_MATCHES_REGEX {$SHAREPOINT.LLD.FILTER.FULL_PATH.NOT_MATCHES}

- {#SHAREPOINT.LLD.TYPE} MATCHES_REGEX {$SHAREPOINT.LLD.FILTER.TYPE.MATCHES}

- {#SHAREPOINT.LLD.TYPE} NOT_MATCHES_REGEX {$SHAREPOINT.LLD.FILTER.TYPE.NOT_MATCHES}

Items collected

Group Name Description Type Key and additional info
Sharepoint Sharepoint: Get directory structure: Status

HTTP response (status) code. Indicates whether the HTTP request was successfully completed. Additional information is available in the server log file.

DEPENDENT sharepoint.get_dir.status

Preprocessing:

- JSONPATH: $.status

⛔️ON_FAIL: CUSTOM_ERROR -> DISCARD_VALUE

- DISCARD_UNCHANGED_HEARTBEAT: 3h

Sharepoint Sharepoint: Get directory structure: Exec time

The time taken to execute the script for obtaining the data structure (in ms). Less is better.

DEPENDENT sharepoint.get_dir.time

Preprocessing:

- JSONPATH: $.time

⛔️ON_FAIL: CUSTOM_ERROR -> DISCARD_VALUE

- DISCARD_UNCHANGED_HEARTBEAT: 3h

Sharepoint Sharepoint: Health score

This item specifies a value between 0 and 10, where 0 represents a low load and a high ability to process requests and 10 represents a high load and that the server is throttling requests to maintain adequate throughput.

HTTP_AGENT sharepoint.health_score

Preprocessing:

- REGEX: X-SharePointHealthScore\b:\s(\d+) \1

- IN_RANGE: 0 10

⛔️ON_FAIL: DISCARD_VALUE ->

- DISCARD_UNCHANGED_HEARTBEAT: 3h

Sharepoint Sharepoint: Size ({#SHAREPOINT.LLD.FULL_PATH})

Size of:

{#SHAREPOINT.LLD.FULL_PATH}

DEPENDENT sharepoint.size["{#SHAREPOINT.LLD.FULL_PATH}"]

Preprocessing:

- JSONPATH: {{#SHAREPOINT.LLD.JSON_PATH}.regsub("(.*)", \1)}.meta.size

⛔️ON_FAIL: DISCARD_VALUE ->

- DISCARD_UNCHANGED_HEARTBEAT: 24h

Sharepoint Sharepoint: Modified ({#SHAREPOINT.LLD.FULL_PATH})

Date of change:

{#SHAREPOINT.LLD.FULL_PATH}

DEPENDENT sharepoint.modified["{#SHAREPOINT.LLD.FULL_PATH}"]

Preprocessing:

- JSONPATH: {{#SHAREPOINT.LLD.JSON_PATH}.regsub("(.*)", \1)}.meta.modified

⛔️ON_FAIL: DISCARD_VALUE ->

- DISCARD_UNCHANGED_HEARTBEAT: 3h

Sharepoint Sharepoint: Created ({#SHAREPOINT.LLD.FULL_PATH})

Date of creation:

{#SHAREPOINT.LLD.FULL_PATH}

DEPENDENT sharepoint.created["{#SHAREPOINT.LLD.FULL_PATH}"]

Preprocessing:

- JSONPATH: {{#SHAREPOINT.LLD.JSON_PATH}.regsub("(.*)", \1)}.meta.created

⛔️ON_FAIL: DISCARD_VALUE ->

- DISCARD_UNCHANGED_HEARTBEAT: 3h

Zabbix raw items Sharepoint: Get directory structure

Used to get directory structure information

SCRIPT sharepoint.get_dir

Preprocessing:

- CHECK_NOT_SUPPORTED

⛔️ON_FAIL: CUSTOM_VALUE -> {"status":520,"data":{},"time":0}

Expression:

The text is too long. Please see the template.

Triggers

Name Description Expression Severity Dependencies and additional info
Sharepoint: Error getting directory structure.

Error getting directory structure. Check the Zabbix server log for more details.

last(/Microsoft SharePoint by HTTP/sharepoint.get_dir.status)<>200 WARNING
Sharepoint: Server responds slowly to API request

-

last(/Microsoft SharePoint by HTTP/sharepoint.get_dir.time)>2000 WARNING
Sharepoint: Bad health score

-

last(/Microsoft SharePoint by HTTP/sharepoint.health_score)>"{$SHAREPOINT.MAX_HEALT_SCORE}" AVERAGE
Sharepoint: Sharepoint object is changed

Updated date of modification of folder / file

last(/Microsoft SharePoint by HTTP/sharepoint.modified["{#SHAREPOINT.LLD.FULL_PATH}"],#1)<>last(/Microsoft SharePoint by HTTP/sharepoint.modified["{#SHAREPOINT.LLD.FULL_PATH}"],#2) INFO

Manual close: YES

Feedback

Please report any issues with the template at https://support.zabbix.com

Vous n’avez pas trouvé ce que vous cherchiez ?