Voxel Blog: Uptime
mvenzke's picture
Mike Venzke
Jun-29-2010

Recent Updates from the Voxel Development Team – New Device Metrics API

Last week we deployed another cumulative release that brought a bunch of new methods to our Voxel Hosting API (hAPI). You can now manipulate payment methods, pay invoices, list all the services on your account including current usage charges, and perhaps most powerfully, you can now retrieve historical metrics from your devices for a variety of data points. Using voxel.devices.metrics.list and  voxel.devices.metrics.read, you can view things like Apache connection counts and requests per second; Mysql connection and operation counts; disk, memory, and cpu  usage; system load; I/O rates; and bandwidth rates. Not only are you able to retrieve current usage, but also historical usage for as far back as we have records, even using different data point step sizes, like 1minute/hour/day/month, etc. This can be a powerful tool to create your own monitoring applications or to apply alerting logic, even to decide when to spawn new cloud instances based on load or traffic. We've also extended hAPI to respond with compressed output when requested, and implemented compression by default in all our example client libraries. As always, this release included some minor bug fixes and additional small features. The complete changelog is below.

 

 

  • In VoxCAST OnDemand, an issue was resolved that prevented nesting of Locations with S3-sourced origins that used different authentication keys.
  •  

     

  • In VoxCAST OnDemand, an issue was resolved that prevented nesting of Locations with S3-sourced origins that used different authentication keys.
  •  

     

  • hAPI now responds with gzip-compressed output when requested, and all client libraries have been updated to request compressed responses by default.
  •  

     

  • A new hAPI method, devices.metrics.list, was created to list available metrics on a device.
  •  

     

  • A new hAPI method, devices.metrics.read, was created to obtain historical metrics for a device.
  •  

     

  • A new hAPI method, billing.services.list, was created to list all services on an account.
  •  

     

  • A new hAPI method, billing.payment_methods.add, was created to add a payment method to an account.
  •  

     

  • A new hAPI method, billing.payment_methods.update, was created to update payment methods on an account.
  •  

     

  • A new hAPI method, billing.payment_methods.delete, was created to delete a payment method on an account.
  •  

     

  • A new hAPI method, billing.invoices.pay, was created to pay an invoice using a stored payment method.
  •  

     

  • A new hAPI method, hapi.users.reset_password, was created to automate password resets when authkey and password are lost.
  •  

     

  • hAPI client libraries were extended to support the new non-standard hapi.users.reset_password method.
  •  

     

  • The hAPI method, billing.invoices.list, was updated to resolve some issues in amount discrepancies and missing invoice items in some situations.
  •  

     

  • The example in the ruby hAPI client library was updated to remove previously-deprecated parameters.
  •  

     

  • hAPI DNS record methods were changed to only accept the 'domain_record_priority' parameter for MX and SRV record types.
  •  

     

  • A spelling typo was corrected in the documentation for the hAPI method, voxel.hapi.users.update.
  •  

     

  • VoxSTRUCTURE create methods were changed to not assign an non-admin SSH user password if a non-admin SSH username was not given.
  •