Monitor FileMaker Server met de Admin API

Sinds FMS 18 zit er in FMS de mogelijkheid om deze te monitoren en te beheren met de Admin API. De documentatie zit in elke FMServer ingebakken en is te vinden via: https://<ip_of_fqdn_van_fmserver>/fmi/admin/apidoc/
FMS 17 had ook al een Admin API aan boord, maar die was in Beta en sinds 27 sept 2019 is die niet meer beschikbaar op dat platform. Dit artikel gaat daarom uitsluitend over de huidige versie, die vanaf FMS 18 beschikbaar is.

Net zoals de Data API

Alle communicatie met deze Admin API werkt principieel hetzelfde als de Data API. Je logt in en je krijgt, als dat is gelukt, een token als antwoord. Alle opdrachten die je wilt uitvoeren, worden met deze token gedaan en als je klaar bent, maak je de token ongeldig (of hij verloopt na een kwartier).

Webservice

De Admin API is een webservice, dat betekent dat je deze kan aanspreken vanaf iedere willekeurige computer die een cURL-achtige applicatie aan boord heeft. Je zou dus de command-line op de Mac kunnen gebruiken of Postman, maar met FileMaker gaat het ook, als je de script-stap Insert-from-URL gebruikt.

Tools op internet

Er zijn op internet diverse tools te vinden waarmee je FMS kan beheren, terwijl er gebruikt wordt gemaakt van deze Admin API. Een selectie van de beschikbare tools:

FileMaker:
https://filemaker.taylormadeservices.com/fmi/webd/TMSsoftware?$Web=Web (Zie ook de uitleg op https://www.tms.us/FileMaker/AdminAPI.html)
https://thebrainbasket.com/the-missing-admin-tool-for-filemaker-server-18/
https://github.com/SoliantMike/FM-Admin-API-Tool
https://www.productivecomputinguniversity.com/courses/fm-server-manager

Javascript:
https://github.com/soliantconsulting/fms-ace
https://github.com/Dorfnox/AdminFM-for-Zapier

PHP:
https://github.com/driftwoodinteractive/fmPDA

Python:
https://github.com/beezwax/filemaker-admin/tree/master/filemaker_admin

GO: (Niet FileMaker Go)
https://github.com/johansundell/atatikiFmsBot
https://github.com/emic/fmcsadmin

Tool van FileMakerTips

Uiteraard heb ik zelf ook een tooltje gemaakt. Het bijzondere van deze tool is dat ik hem eigenlijk heb gemaakt om een deel van de logging te doen. Al bouwend werd het toch een beheerstool. Het is de bedoeling dat je dit bestand host op de server.

Op de server maak je een schedule dat het script “Get Serverinformation” vanaf 0:00 tot 23:59 iedere minuut probeert te starten. De timeout zet je uit, want het script loopt minimaal een uur in een lus en ververst iedere 15 seconden de gegevens. Het script wordt nooit dubbel gestart als het nog loopt, dus daar heb je geen omkijken naar.

De server monitort op deze manier zichzelf via de Admin API! Je zou het bestand dus kunnen openen op je iPhone en dan de server bedienen, want alle scripts draaien PSoS (op de server zelf)

Ontbrekende functies:

Er is geen ondersteuning gebouwd voor multi-server-deployments. Schedules kunnen (nog) niet worden bewerkt of gemaakt, maar wél worden geactiveerd of uitgeschakeld.

Downloaden

Tenslotte de download: FMT_Monitor Overigens werkt dit bestand alléén op FMS18 of nieuwer, maar je kan het wél openen met FileMaker vanaf versie 17.


Top