A collection of my standalone scripts to small/quick for their own repos. All kinds of useful stuff.
Python PHP Perl Shell Other
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
ubiquiti-mac-acl updated Jan 6, 2011
.gitignore add watch_circleci.py Apr 10, 2017
LICENSE moved to git - added LICENSE, README.md Mar 9, 2013
README.VCS adding README.VCS prior to move to GitHub Mar 9, 2013
README.md dump_firefox_session.py Jul 30, 2018
VipToInternalHosts.pl make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
add_team_to_github_org_repos.py add_team_to_github_org_repos Mar 5, 2015
apache_log_verify_site_move.py oops, bug fix Feb 4, 2014
artifactory_support_bundle.py initial version of artifactory_support_bundle.py Apr 5, 2018
asg_instances.py add asg_instances.py Jun 7, 2016
aws-count-tag-names.py aws-count-tag-names.py Jun 27, 2017
aws_api_gateway_lint.py add aws_api_gateway_lint.py Aug 11, 2017
aws_creds_report_csv_filter.py aws_creds_report_csv_filter.py Dec 11, 2017
aws_find_duplicate_sgs.py add aws_find_duplicate_sgs.py Jul 18, 2017
aws_limit_increases_for_service.py aws_limit_increases_for_service.py Sep 22, 2017
aws_sg_summary.py minor fix Mar 26, 2018
aws_subnet_available_ips.py initial version of aws_subnet_ip_usage; update aws_subnet_available_i… Feb 21, 2018
aws_subnet_ip_usage.py update changelog Apr 15, 2018
bigipcookie.pl make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
check_url_list.py adding check_url_list.py, Script to check a list of URLs (passed on s… Jun 7, 2013
cm600_to_graphite.py cm600_to_graphite.py Jul 19, 2018
cmd-wrapper.c make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
collectRsyslogInfo.php make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
cookies_from_pdml.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
dashsnap.py show defaults in help May 7, 2014
disqus_backup.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
dot_find_cycles.py dot_find_cycles.py: Add Python 3 support May 23, 2018
dumpMysqlGrants.sh make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
dump_firefox_session.py dump_firefox_session.py Jul 30, 2018
dump_skype_logs.py minor updates Jun 1, 2016
dump_sphinx_objects_inventory.py add comment Sep 22, 2016
ec2-list-all-tags.py add ec2-list-all-tags.py Jul 21, 2016
find_dupes.py find_dupes.py May 12, 2017
find_outdated_puppets.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
find_test_order_problems.py first find_test_order_problems.py Apr 19, 2015
firefox_recovery_to_html.py add headers Dec 12, 2014
get_addons.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
gist.py gist.py - handle older pythons where we can't disable ssl verification Apr 15, 2015
git_repo_diff.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
github_clone_setup.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
github_find_member_with_key.py add github_find_member_with_key.py Nov 23, 2016
github_irc_hooks.py add github_irc_hooks.py Jul 8, 2015
github_issue_watch_pushover.py add github_issue_watch_pushover.py Jan 5, 2017
github_label_setup.py github_label_setup.py - Fix unicode error when reading token from git… Feb 18, 2018
gitlab_repo_import.py migrate gitlab scripts to https://github.com/jantman/gitlab-scripts Jul 24, 2015
gitlab_ssh_key_sync.py migrate gitlab scripts to https://github.com/jantman/gitlab-scripts Jul 24, 2015
gmvault_link_labels.py gmvault_link_labels.py nested label creation fix May 12, 2018
har_urls.py add headers Dec 12, 2014
hipchat_date_history.py fix unicode errors in hipchat_date_history.py Feb 3, 2016
htmldata.py htmldata.py - dependency for mw2html Feb 28, 2012
increment_zone_serial adding increment_zone_serial, slightly modified version of slaught's … Jul 8, 2013
ismerged add ismerged shell script Dec 17, 2013
jenkins_list_plugins.py new jenkins plugin list script Oct 17, 2016
jenkins_node_labels.py jenkins_node_labels.py - add CSV output option Jan 8, 2016
jenkins_plugins_to_puppet.py new jenkins plugin list script Oct 17, 2016
jira2trello.py specify requirements Apr 10, 2015
js2phpdoc.php make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
kickRsyslog.php make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
lastpass2vault.py lastpass2vault.py - notes on using my fork/PR to include notes in Acc… Oct 22, 2017
libvirt_csv.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
linodeDnsToCsv.php make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
linode_ddns_update.sh make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
linode_list_records.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
list_all_aws_resources_skew.py list_all_aws_resources_skew.py Jun 22, 2016
list_github_org_repos.py list_github_org_repos.py csv output Jul 7, 2015
make_puppet_param_markdown.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
mw2html-auth added options to interactively use cookies grabbed from browser to au… Sep 24, 2012
nagios_log_problem_interval.pl make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
nethogs2statsd.py trim down nethogs2statsd metrics a bit Oct 24, 2017
nethogs2statsd.service add nethogs2statsd script Aug 27, 2017
nmap-xml-to-table.php make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
pacman_compare.py add package description to output - pacman_compare.py Sep 23, 2015
pagerduty_list_incidents.py fix syntax error in previous commit Aug 15, 2018
print-cmd-wrapper.c adding some wrapper scripts for rsnapshot Jan 12, 2012
print-cmd.sh make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
puppetconf_to_youtube.py foo Nov 10, 2015
pushover pushover - switch from env vars to .conf May 11, 2015
quick_cloudtrail.py major performance improvement to quick_cloudtrail.py - load and searc… Dec 5, 2016
rebuild_srpm.sh make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
reconcile_git_repos.html.tmpl add reconcile_git_repos.py Jun 30, 2015
reconcile_git_repos.py add reconcile_git_repos.py Jun 30, 2015
reviewboard_reminder_mail.py add headers Dec 12, 2014
route53_ddns_update.sh route53_ddns_update.sh bug fixes Jun 27, 2018
rss_to_mail.py Adding rss_to_mail.py, a simple script to follow RSS and email changes Oct 26, 2013
rss_to_mail_config.py rss_to_mail_config.py example config Oct 26, 2013
rsync-wrapper.c make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
rsyslogIsHung.php make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
rsyslogPstats.php make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
ruby_simplecov_diff.rb add ruby_simplecov_diff.rb Jun 6, 2016
s3sync_inotify.py fix prefix issue in getting current keys Dec 29, 2015
savescreen.py switch to logging Jun 26, 2015
scrape_domain.py scrape_domain.py appears to be working now Jan 2, 2014
show_cf_template_params.py add headers Dec 12, 2014
show_dhcp_fixed_ACKs.pl make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
simpleLCDproc.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
skeleton.py skeleton.py - new-style class Aug 10, 2016
smart_check.py smart_check.py - ignore Power_Cycle_Count, Start_Stop_Count, Load_Cyc… Mar 12, 2017
sms_backup_dump.py committing sms_backup_dump changes from disk Apr 5, 2018
sync_git_clones.conf adding WIP sync_git_clones.sh - should probably be converetd over to … Apr 28, 2014
sync_git_clones.sh make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
syslogAgeChecker.php make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
syslogDatesGraph.php make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
syslogDatesToArray-sample.ser First commit of syslog dates to array processing/collection script, a… Sep 28, 2011
syslogDatesToArray.php make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
test_libvirt.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
timeout adding these files from rutgers rsyslog work Sep 9, 2011
tomtom_tsp.py fix minor bug on line 170 Jan 27, 2015
toxit.py update toxit to handle passenv and setenv Mar 22, 2017
trello_copy_checklist.py add trello_copy_checklist.py Apr 30, 2018
trello_ensure_card.py trello_ensure_card.py - add support for card position Dec 3, 2016
trello_push_due_dates.py add trello_push_dates.py Jul 9, 2016
twitter_find_followed_not_in_list.py fix twitter script Dec 4, 2015
watch_all_my_github_repos.py add watch_all_my_github_repos.py Jul 29, 2015
watch_circleci.py add watch_circleci.py Apr 10, 2017
watch_cloudformation.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
watch_elasticsearch.py watch_elasticsearch.py - more verbose logging Sep 22, 2015
watch_jenkins.py watch_jenkins.py - properly handle MultiBranch PR URLs Aug 23, 2017
watts_up_pro_logger.py update README with missing files Jun 27, 2017
whendoiwork.png fix bug in whenidowork - checks for author and date in fsck Jun 6, 2015
whendoiwork.py fix bug in whenidowork - checks for author and date in fsck Jun 6, 2015
where_is_my_pi_zero.py fix unhandled exception in check_stock() May 22, 2016
wiki-to-deckjs.py make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
wordpress_daily_post.php make sure everything in this repo has a correct URL to the current sc… Dec 26, 2014
xb3_to_graphite.py xb3_to_graphite.py - add support for headless chrome Apr 8, 2018

README.md

misc-scripts

Project Status: Active - The project has reached a stable, usable state and is being actively developed.

This is a collection of miscellaneous scripts that I've written or modified for my use. Hopefully they may be of some use to others. When I get a chance, I'll try and update this readme with descriptions of all of the scripts.

Unless otherwise noted, these are distributed under the terms of the LICENSE file.

  • add_team_to_github_org_repos.py - Python script to add a given GitHub Team to all of the specified Organization's repositories.
  • apache_log_verify_site_move.py - Python script that parses Apache HTTPD access logs, finds all unique URLs, and compares the current HTTP response code to that of another server. Useful when moving a site.
  • artifactory_support_bundle.py - Python script using requests to generate, list, and download JFrog Artifactory support bundles via the ReST API, from one or more instances/nodes.
  • asg_instances.py - Script to list instances in an ASG and their IP addresses, given an ASG name.
  • aws_api_gateway_lint.py - Script using boto3 to attempt to identify unused or idle API Gateways.
  • aws-count-tag-names.py - Using boto3, scan all AWS resources in the current account, and produce a report detailing all of the distinct tag names and the number of resources having each one.
  • aws_creds_report_csv_filter.py - Filter the AWS IAM Credentials Report (CSV) by credential age and/or last used time.
  • aws_find_duplicate_sgs.py - Using boto3, find duplicated EC2 Security Groups (optionally limited to one VPC).
  • aws_limit_increases_for_service.py - Script using boto3 to show all Limit Increase support tickets for a specified service.
  • aws_sg_summary.py - Print a summary of all SGs in the current account/region, their rules, and what's in them.
  • aws_subnet_available_ips.py - Print information on used and available IPs in an AWS subnet.
  • aws_subnet_ip_usage.py - Given an AWS Subnet ID or CIDR, report on the usable number of IPs, used IPs, and how many additional IPs would be taken up if all ELBs and ASGs scaled out.
  • bigipcookie.pl - Perl script to de/encode F5 BigIp persistence cookies.
  • centos7_rpmbuild.Vagrantfile - Moved to https://github.com/jantman/rpmbuild-vagrant-boxes
  • check_url_list.py - Script to check a list of URLs (passed on stdin) for response code, and for response code of the final path in a series of redirects.
  • cm600_to_graphite.py - Pull stats from Netgear CM600 modem web UI and push to graphite.
  • cmd-wrapper.c - C wrapper for a setuid/gid command, to ensure that ONLY a certain command and args can be run.
  • collectRsyslogInfo.php - Script to collect information on a crashed/hung rsyslogd process, and log it all somewhere.
  • cookies_from_pdml.py - Script to parse http Cookie header field from WireShark PDML XML.
  • dashsnap.py - script to snapshot a graphite dashboard at specified intervals in the past (i.e. the last 2,4,6 hours) or a single specified time range. Snapshots both PNG images and raw JSON data, builds directory with HTML files.
  • disqus_backup.py - script to backup all Disqus comments for a site.
  • dot_find_cycles.py - uses Pydot and NetworkX to find cycles in a dot file directed graph (i.e. the graph output of Puppet)
  • dump_firefox_session.py - Script to dump all URLs from a Firefox3 sessionstore.js or modern Firefox sessionstore.jsonlz4.
  • dumpMysqlGrants.sh - Script to dump all grants from a MySQL server, for input into another.
  • dump_skype_logs.py - Script to dump all Skype logs from a main.db file to HTML
  • dump_sphinx_objects_inventory.py - Process URL for intersphinx targets and emit html or text.
  • ec2-list-all-tags.py - Using boto3, list all distinct tag names on all EC2 instances in all regions.
  • find_outdated_puppets.py - Script to look at a Puppet Dashboard unhidden-nodes.csv and extract the latest report time for each node, optionally, list nodes with runtime BEFORE a string.
  • find_test_order_problems.py - Script to run tests multiple times and analyze JUnit results XML, to find tests with order-dependent failures.
  • firefox_recovery_to_html.py - Script to convert Firefox profile sessionstore-backups/recovery.js to HTML links
  • get_addons.py - Unmaintained script to download WoW addons from CurseForge.
  • gist.py - Simple python script to upload a file as a private Gist on GitHub. Prompts interactively for Auth token, so usable from shared servers.
  • git_repo_diff.py - uses GitPython to compare 2 git repo clones and report on branches that only exist in one, or have different head commits in the two repos
  • github_clone_setup.py - script using github3.py to add upstream remote for any clone of a github fork, and add refs to check out pull requests from origin and upstream.
  • github_find_member_with_key.py - Script using PyGithub to list an organization's members, and then find who has a specified public key.
  • github_irc_hooks.py - script to setup GitHub repo IRC service hooks
  • github_issue_watch_pushover.py - Poll github for updates to issues, notify via Pushover if there are any.
  • github_label_setup.py - script to setup a given set of labels on all of your (or an org's) GitHub repos.
  • gmvault_link_labels.py - Script to iterate over ALL messages in a GMVault backup DB directory and symlink them into per-label per-thread directories.
  • har_urls.py - Script to dump all URLs and their status codes from a JSON HTTP Archive (HAR) file, such as those generated by the Firebug NetExport extension
  • hipchat_date_history.py - Python script to retrieve HipChat room history for a specific date.
  • htmldata.py - Perl library to manipulate HTML or XHTML documents, required by mw2html-auth
  • increment_zone_serial - This script updates/increments the bind zone file serial number in a file specified as the first argument
  • ismerged - shell script that takes a git branch name, and tells if it is merged into master or not
  • jenkins_list_plugins.py - Python script to query Jenkins for all installed plugins, and list them. Optionally output as a block of Puppet code for the puppet-jenkins module.
  • jenkins_node_labels.py - Python script to list all Jenkins slaves/executors and their labels.
  • jenkins_plugins_to_puppet.py - DEPRECATED in favor of jenkins_list_plugins.py. Python script to query Jenkins for all installed plugins, and generate a block of Puppet code for the puppet-jenkins module.
  • jira2trello.py - Python script to update a Trello board with some details from Jira.
  • js2phpdoc.php - script to take comments and function prototypes from JS files and make them PHP-ish to be parsed by phpdoc
  • kickRsyslog.php - script to restart rsyslog if it appears to have stopped logging
  • lastpass2vault.py - Interactive script using HVAC and lastpass-python to copy your LastPass saved passwords to a HashiCorp Vault server.
  • libvirt_csv.py - Use libvirt python bindings to print CSV lists of dom0_host,domU_name,ID,state,UUID for all qemu+kvm VMs running on libvirt hosts passed in as arguments
  • LICENSE - License for these files - GPLv3 with additional provisions
  • linode_ddns_update.sh - simple script to use Linode's HTTP API to update Linode DNS for a dynamic IP
  • linodeDnsToCsv.php - Script to pull DNS information for all of your Linode hosted zones, output as CSV
  • linode_list_records.py - Simple script to list all records in Linode DNS via API, along with their type, DomainID and ResourceID
  • list_all_aws_resources_skew.py - Script using skew to list all AWS resources in your account
  • list_github_org_repos.py - List information about an org's repositories using PyGithub (GitHub API library)
  • make_puppet_param_markdown.py - # Python script to generate MarkDown docblock fragment for all parameters of a Puppet parameterized class or define. Simple, naive regex matching. Assumes you style your manifests properly.
  • mw2html-auth - Produce an HTML version (standalone backup/export) of a MediaWiki site that's behind authentication
  • nagios_log_problem_interval.pl - Chart intervals between problem and recovery from Nagios/Icinga logs
  • nethogs2statsd.py - Python script to push nethogs data to statsd.
  • nethogs2statsd.service - Example systemd unit for the above script.
  • nmap-xml-to-table.php - Script to transform multiple nmap XML output files (presumably of the same host/port range with different scan options) into a HTML table
  • pacman_compare.py - Compare packages in two files containing pacman -Q output. Ignores versions.
  • pagerduty_list_incidents.py - Python script to list and filter PagerDuty incidents.
  • print-cmd.sh - Simple script to log environment variables and original command for forced ssh commands
  • print-cmd-wrapper.c - C wrapper like cmd-wrapper.c, but just echoes back the command that was called
  • pushover - script to wrap execution of a command and send Pushover and notify-send notifications about its duration and exit code.
  • quick_cloudtrail.py - Python script to parse AWS CloudTrail log JSON files and search for a user, IP, request ID, etc.
  • README.VCS - Note on my CVS/SVN to github migration
  • rebuild_srpm.sh - Script to rebuild a SRPM 1:1, useful when you want to build a RHEL/CentOS 6 SRPM on a RHEL/CentOS 5 system that doesn't support newer compression (cpio: MD5 sum mismatch)
  • reconcile_git_repos.py - Script to reconcile the state of GitHub repos with local repos (from a private or other git server).
  • reviewboard_reminder_mail.py - ReviewBoard - Script to send reminder emails for any open reviews, targeted at a specific group, not updated in more than X days.
  • route53_ddns_update.sh - Bash script to update Route53 dynamic DNS
  • rss_to_mail_config.py - sample configuration file for rss_to_mail.py*
  • rss_to_mail.py - Dead simple python script to find new entries in an RSS feed, and email listing of new entries matching a regex to you. Intended to be run via cron.
  • rsync-wrapper.c - setuid/gid wrapper around rsync. Useful to allow members of a specified group to do rsync backups as root over SSH.
  • rsyslogIsHung.php - script to investigate rsyslog hangs, write output, and send mail
  • rsyslogPstats.php - script to parse rsyslog impstats output and generate a simple report
  • ruby_simplecov_diff.rb - Given two Ruby simplecov output directories, show the differences
  • s3sync_inotify.py - Python script using boto and pyinotify to watch a directory and sync all files in it to an S3 bucket, and update an index.html file for the bucket.
  • savescreen.py - Python script to save screen windows and titles, and write a screenrc to recreate them.
  • scrape_domain.py - Python script using requests and BeautifulSoup4 to request all URLs/links/images/CSS/feeds/etc. found on a domain.
  • show_cf_template_params.py - Show all parameters and their defaults for a CloudFormation template
  • show_dhcp_fixed_ACKs.pl - script to show the most recent DHCP ACKs per IP address for ISC DHCPd, from a log file. Originally written for Vyatta routers that just show the dynamic leases
  • simpleLCDproc.py - Simple LCDproc replacement in Python. Uses LCDd server.
  • skeleton.py - Skeleton of a one-off Python CLI script, including optparse and logging.
  • smart_check.py - Check SMART status of all attached and SMART-enabled disks via pySMART. Report on status. Cache status on disk, and exit non-zero if status of any disks changes.
  • sms_backup_dump.py - Dump the XML SMS logs from the SMS Backup and Restore Android app to HTML
  • sync_git_clones.sh - WIP / Alpha - Script to sync all local git clones in a list of paths with origin (and upstream, if configured). If present, uses github_clone_setup.py to setup upstream branches for any GitHub forks, and set refs to check out pull requests from origin and upstream.
  • sync_git_clones.conf - config file for sync_git_clones.sh
  • syslogAgeChecker.php - script to check timestamp of last syslog line in some files, and send mail if >= X seconds
  • syslogDatesGraph.php - script to help visualize time distribution of syslog messages. This is the graph host part.
  • syslogDatesToArray.php - script to help visualize time distribution of syslog messages. This is the log host part.
  • syslogDatesToArray-sample.ser - example serialized data for syslogDatesGraph.php
  • test_libvirt.py - some tests using the libvirt python bindings, for qemu+kvm hosts accessed over SSH
  • timeout - shell script to execute a command with a timeout
  • tomtom_tsp.py - Script to take a list of TomTom WoW addon coordinates and output them in the optimal order.
  • toxit.py - Script to parse a tox.ini file, and run the test commands inside an existing virtualenv, against the code already installed there.
  • trello_copy_checklist.py - Python script to copy a checklist from one Trello card to another.
  • trello_ensure_card.py - Script to ensure that a card with the given title (and optionally other attributes) exists in the specified column of the specified board.
  • trello_push_due_dates.py - Script to push all due dates on a Trello board (optionally in one list) back by N days.
  • twitter_find_followed_not_in_list.py - Simple script to list anyone whom you're following but isn't in one of your lists.
  • ubiquiti-mac-acl/ - PHP script and MySQL schema to manage the MAC ACL on Ubiquiti AirOS2 devices.
  • VipToInternalHosts.pl - script to take F5 BigIp VIP address and display the members of the pool it is served by
  • watch_all_my_github_repos.py - Python script to ensure you're watching all of your own GitHub repos.
  • watch_circleci.py - Python script to watch a CircleCI build, optionally notify via Pushover, and optionally retry failed builds.
  • watch_cloudformation.py - Python script to watch a CloudFormation stack's events, and exit when the CF stack update or create finishes. Optional notification via PushOver.
  • watch_elasticsearch.py - Python script to watch an ElasticSearch cluster's status and exit/notify when the status changes. Optional notifivation via PushOver.
  • watch_jenkins.py - Python script using python-jenkins (https://pypi.python.org/pypi/python-jenkins) to watch a job (specified by URL), and exit 0 on success or 1 on failure. Optional notification via PushOver.
  • watts_up_pro_logger.py - Logs data from a Watts Up Pro USB data collector to a file, and optionally to a Graphite instance.
  • whendoiwork.py - Script to find all git repositories in a list of local filesystem paths, iterate over all commits in them (in the last N days), and build a histogram of the day of week and hour of day of your commits (using information from your git configuration).
  • where_is_my_pi_zero.py - Python script to find in-stock Raspberry Pi Zero
  • wiki-to-deckjs.py - simple, awful script to change markdown-like (very restricted markup set) markup to deck.js-ready html
  • wordpress_daily_post.php - Script to publish the oldest post with a given status, if no other post has been published in 24 hours. Intended to be run via cron on weekdays
  • xb3_to_graphite.py - Pull stats from Comcast XB3 modem web UI and push to graphite.