Finding out your federation identifier

For the whole list of member federation identifiers see

https://technical-test.edugain.org/api?action=list_fed_codes&opt=1&format=print_r

Validating

After you produce a new feed you might want to make sure that it will be properly validated by eduGAIN, so you might run
https://technical-test.edugain.org/validator?fed_id=fed_id&format=xml
and react if the returncode is non-zero. This command will pull metadata from where MDS normally takes it and will immediately validate it.

Monitoring

We also provide a tool for monitoring the status of eduGAIN metadata. In particular this tool allows you to find out how eduGAIN sees your federation metadata.

API calls to obtain monitoring information

Full eduGAIN information

Single federation information (PIONIER.Id example)

Monitoring output

feed_problem and feed_problem_desc

If all is OK then the feed_problem value is 0, if a problem exists then the feed_problem will be set to 1 and feed_problem_desc will provide an explanation of what went wrong.

Time fields

All time values are provided as UTC in ISO 8601 format.
feed_pull_time
the last time when MDS attempted a metadata pull
last_validation
the last time when MDS positively validated the federation feed
valid_until
the expiry time of the current ferderation metadata feed (if the current federation feed is unavalable for some reason then this is the expiry time of the cached copy in use)
valid_sec
same as above but in seconds since the current moment
creationinstant
the value of the creationInstant from the federation metadata (if present)

A Nagios monitoring script

The following script has been provided by Ian Young on behalf of the UK Federation with a permission to be used by eduGAIN member federations.

#!/usr/bin/bash

#
# check_edugain fed warn crit
#
# fed  - federation code, e.g., GB
# warn - number of seconds for warning threshold
# crit - number of seconds for critical threshold
#
# Days vs. seconds, for testing:
#
# 14 - 1209600 - Friday night
# 13 - 1123200 - Saturday night
# 12 - 1036800 - Sunday night
# 11 -  950400 - Monday night
# 10 -  864000
#  1 -   86400
#
/usr/lib64/nagios/plugins/check_json \
    --url "https://technical.edugain.org/api.php?action=edugain_status&fed_id=$1" \
    --attributes "{\"$1\"}->{feed_problem},{\"$1\"}->{valid_sec}" \
    --warning 1,$2: --critical 0,$3: \
    --perfvars "{\"$1\"}->{feed_pull_time},{\"$1\"}->{valid_until},{\"$1\"}->{valid_sec},{\"$1\"}->{feed_problem}"