/**
  * Internal function which will create an audit record for the object that was
  * being tracked.
  *
  * @param string $object The name of the object that was being tracked.
  * @param mixed  $object_key The primary key of the object that was being tracked.
  * @param string $changes A (serialized) string containing the individual changes of the object.
  * @param string $query The SQL query that was executed for this record.
  * @param string $type The audit type. This can be one of the following constants: 
  *               TYPE_ADD, TYPE_UPDATE, TYPE_DELETE, or TYPE_SELECT
  * @return void
  */
 private function save($object, $object_key, $changes, $query, $type, $domain_id = 0)
 {
     $audit = new Audit();
     $audit->setRemoteIpAddress($this->getRemoteIP());
     $audit->setObject($object);
     $audit->setObjectKey($object_key);
     $audit->setDomainId($domain_id);
     $audit->setObjectChanges($changes);
     $audit->setQuery($query);
     $audit->setType($type);
     $audit->setCreatedAt(date($this->dateFormat));
     $audit->save();
 }