Ankündigung: Update der mite.api

[Update 1.3.] Wie angekündigt wurde die aktualisierte mite.api heute veröffentlicht. Bitte hier entlang zur neuen Dokumentation.

Am kommenden Sonntag, den 1. März wird unsere offene Datenschnittstelle, die mite.api, aktualisiert werden. Frische, zusätzliche Funktionen werden bald bereitstehen. Eure Wünsche, die uns seit der Veröffentlichung der API im August vergangenen Jahres erreichten, sollen Eingang finden – vorneweg das ausführliche Feedback von Billomat (merci!).

Werte Entwickler: bitte werft einen Blick auf die nachfolgend detailliert erläuterten Änderungen. Kleinere Umbauten auch auf eurer Seite können notwendig werden.

/times wird zu /daily

Die alte URI wird allerdings weiterhin funktionieren.

/timesheets wird zu /time_entries

Die alte URI wird weiterhin funktionieren. Die Root-Tags der ausgegebenen XML-Daten verändern sich jedoch dauerhaft von timesheets zu time_entries bzw. von timesheet zu time_entry.

/time_entries erlaubt vollen Zugriff

Im Gegensatz zur alten Ressource /timesheets kann nun über /time_entries auf alle Zeiten aller Benutzer zugegriffen werden. WICHTIG: Bei einem normalen GET auf /time_entries.xml werden nun alle Zeiteneinträge aller Benutzer angezeigt. Diese Liste kann jedoch nun gefiltert werden (s.u.).

/time_entries mit Filter- und Gruppierungkriterien

Filtern nach:

  • customer_id
  • project_id
  • service_id
  • user_id
  • billable: »true« oder »false«
  • note (Freitextsuche)
  • at: today, yesterday, this_week, last_week, this_month, last_month oder einzelner Tag (im Format YYYY-MM-DD)
  • from, to (beide im Format YYYY-MM-DD)

Gruppieren mit »group_by« Parameter nach:

  • customer
  • project
  • service
  • user
  • day
  • week
  • month
  • year

Mehre Parameter werden mit Komma getrennt (bspw.: »user, service«). Die Reihenfolge ist entscheidend für die Sortierung der Ausgabe.

/time_entries und /projects mit Namen der verbundenen Ressourcen

Für Zeiteinträge und Projekte wird für alle verbundenen Ressourcen nicht nur die ID, sondern auch der Name ausgeben. Beispielsweise wird unter /projects zusätzlich das Attribut »customer_name« ausgegeben, unter /time_entries »customer_name«, »project_name«, »service_name« und »user_name«.

JSON

Die API unterstützt neben XML nun auch das JSON-Format.

Einfachere Authentifizierung

Neben der Authentifizierung über den API-Schlüssel unterstützt die mite.api nun auch die Benutzung der normalen Anmeldedaten E-Mail und Passwort.

Die Dokumentation der neuen, ab kommendem Sonntag gültigen Version steht ab sofort bereit. Gut Code, ihr Tüftler!

Julia in Neue Features, Maschinenraum

Ankündigung von Wartungsarbeiten

Diesen Samstag, den 31. Januar, wird mite für etwa 15 Minuten ab etwa 20 Uhr deutscher Zeit (andere Zeitzone?) nicht erreichbar sein.

Unsere Hardware wird aufgestockt: doppelt so viel Arbeitsspeicher wird der Anwendung nach dieser kurzen Nicht-Erreichbarkeit zur Verfügung stehen. Auf ein weiterhin fixes & stabiles mite, ihr Vielen.

[Update 31.1. 20:18] Pünktlicher Start, pünktliches Ende, der Server nun mit doppeltem Arbeitsspeicher. So soll es sein. Dank an unsere zuverlässigen Helfer im Rechenzentrum wie an Euch für Eure Geduld.

Julia in Maschinenraum

Temporär überlasteter Anwendungsserver

Zwischen 18:07 und 19:01 Uhr des heutigen Abends war mite leider immer wieder nicht erreichbar. Ein überlasteter Anwendungsserver blockierte den Zugriff. Aktuell können wir die Ursache dieser fehlerhaften Reaktion noch nicht ausmachen, setzen jedoch alles an eine so fix als mögliche detaillierte Klärung und Behebung. Nach 3 Monaten regulären Betriebs ist uns diese Störung ein besonderer Dorn im Auge: eine stabil erreichbare Anwendung hat höchste Priorität. Unsere Entschuldigung.

[Update 19:44] Die Ursache ist gefunden, dieser Fehler soll nicht wieder auftreten. Nichtsdestotrotz werden wir ein überaus waches Auge auf den Server behalten, darauf könnt ihr stets vertrauen.

[Update 16.1. 12:26] Unseren Störungen gestern folgte heute leider ein technischer Defekt im Rechenzentrum. Binnen 9 Minuten wurde der fehlerhafte Switch dank Technikern vor Ort ausgetauscht. Die Störungen standen nicht in Zusammenhang. Erneut und hoffentlich ein letztes Mal möchten wir uns von Herzen entschuldigen.

Julia in Maschinenraum

Politurarbeiten im Maschinenraum

Seit wenigen Minuten läuft mite auf neuester Version des zugrundeliegenden Frameworks. Solltest du nichts von dieser Aktualisierung bemerken, strecken wir die Daumen nach oben – denn die geschmeidiger aufeinander abgestimmten Rädchen im Maschinenraum sollten zwar mit einer Spur erhöhter Geschwindigkeit, doch mit keinen funktionalen Veränderungen einhergehen.

Falls dir wider Erwarten ein Fehler auffallen sollte, hilf uns bitte, diesen fix auszumerzen: Sende uns eine den »Tatbestand« möglichst genau beschreibende Mail; Browser & Betriebssystem nicht vergessen. Danke!

Julia in Maschinenraum

Downtime

[Update 22:57] mite ist nun wieder erreichbar. Unseren Dank für eure verständnisvollen Mails und Nachrichten über andere Kanäle! Daten waren selbstverständlich zu keinem Zeitpunkt gefährdet – ein etwaiger Aussetzer des Servers beeinflusst nicht deren Sicherheit.

[Update 22:23] Unglücklicherweise noch keine guten Neuigkeiten aus dem Rechenzentrum.

Seit 18:43 Uhr des heutigen Abends ist mite leider nicht erreichbar. Im Rechenzentrum unseres Partners treten momentan Probleme auf. Techniker sind bereits am Werk und bemühen sich um eine schnellstmögliche Behebung. Sobald wir weitere Details in Erfahrung bringen können oder der Server wieder erreichbar ist, werden wir diesen Eintrag aktualisieren.

Unsere Entschuldigung für etwaige entstehende Unannehmlichkeiten – die Störung ist auch uns ein Dorn im Auge.

Julia in Maschinenraum

Die mite.api öffnet die Tore!

EntwicklerInnen, willkommen: Mit dem heutigen Tag steht die mite.api, unsere Programmierschnittstelle, allen Interessierten im Rahmen einer Open Beta zur Verfügung. Welche Funktionen über den RESTful Webservice en Detail angesprochen werden können, erfahrt ihr in der zugehörigen Dokumentation.

Jeder Benutzer von mite kann auch die API für sein Konto freischalten. Aktiviert wird der Zugang direkt in der Oberfläche, per Klick auf den eigenen Benutzernamen rechts oben. Dort einfach die entsprechende Checkbox aktivieren:

Aktivierung der mite.api

Lasst uns wissen, was ihr bastelt! Mit Feedback stehen wir gerne zur Seite, zudem können wir so eventuell Kontakt zu anderen Entwicklern herstellen, die an ähnlichen Ecken tüfteln. Zur Zeit existiert lediglich eine (stille) Googlegroup; Bei ausreichendem Interesse werden wir für die Zukunft über ein Forum oder ähnliches nachdenken. Nicht zuletzt hilft eure Erweiterung sicherlich auch anderen Nutzer weiter – ein gutes Gefühl.

Julia in Neue Features, Maschinenraum

Downtime

Seit 20:21 Uhr des heutigen Abends ist mite leider nicht erreichbar. Im Rechenzentrum unseres Partners scheint Hardware Probleme zu bereiten. Techniker sind bereits am Werk und bemühen sich um eine schnellstmögliche Behebung. Sobald wir über Details Bescheid wissen, werden wir diesen Eintrag aktualisieren. Wir bitten um ein Quentchen Geduld.

[Update 23:00] Kein kleines Hardwareproblem, sondern ein kompletter Stromausfall aufgrund des Gewitters – so der momentane Status. Leider können wir gerade auch nichts unternehmen als weiter abzuwarten.

[Update 01:00] mite ist wieder am Start! Die Explosion eines Transformators war für den Ausfall verantwortlich. Unser Pardon für etwaige Umstände durch den Ausfall – wir werden die Anwendung heute nacht weiterhin sehr genau im Auge behalten, darauf könnt ihr zählen.

Julia in Maschinenraum

Opera-Unterstützung ab Version 9.5

Ob Opera sich darüber im Klaren ist, wie überzeugt die Nutzerschaft dieses kleinenfeinen Browsers wirklich ist? Wahrscheinlich. Opera Logo Seit der Veröffentlichung der neuen Version von mite sind auch wir im Bilde, und reagieren auf eure lautstarken Meldungen: ab sofort wird zusätzlich Opera ab Version 9.5 unterstützt werden.

An den am 15. Juli auftretenden Bugs gab es nichts zu rütteln – inzwischen sollte die Benutzung glatt laufen. Falls euch doch noch Unstimmigkeiten über den Weg laufen sollten, meldet euch bitte mit möglichst detaillierten Angaben per E-Mail. Dass das für euch ein Kinderspiel ist, wissen wir. Tester-Profis, merci!

Leider sind wir während der Optimierung auch auf einen schwerwiegenden Fehler in allen Opera-Versionen vor 9.5 gestoßen: Der responseText im xhr-Object wird bei allen Requests mit Status ungleich 200 verworfen. Dieser Umstand ließ uns nur die Wahl zwischen einem radikalen Umbau der Anwendung oder dem Fallenlassen aller Operaversionen vor 9.5. Wir haben uns nun für zweiteres Entschieden, da ein Umbau unangemessen viel Zeit & Kraft gekostet hätte – diese stecken wir lieber in für alle nützliche Punkte. Wir zählen auf euer Verständnis.

Julia in Neue Features, Maschinenraum

Serverumzug: mite. ruht heute nacht

Heute, in der Nacht auf Pfingstmontag, wird mite. ab 01:30 bis etwa 04:00 Uhr nicht erreichbar sein. Eine Happy Downtime, denn der an dieser Stelle vorgestellte neue Server wird bezogen werden. Drückt uns die Daumen, dass alles so glatt läuft wie wir uns das vorstellen – über den Fortschritt werden wir euch hier auf dem Laufenden halten.

[02:30] Vamos! mite. nehmen wir nun vom Netz, sichern den aktuellen Stand der Datenbank und spielen ihn sodann auf den neuen Server.

[02:50] Alle Bits und Bytes sind geschleppt. Die App fahren wir jetzt hinter noch verschlossenen Türen wieder hoch und testen en Detail, ob alles schnurrt wie es soll.

[03:10] Vorletzter Schritt: die Umschaltung des Nameservers. Letzter Schritt: warten.

[03:30] Glatte Sache: mite. ist wieder erreichbar. Bleibt zu beobachten, wie sich der neue Server unter realer statt simulierter Last verhält. Falls euch Unregelmäßigkeiten auffallen sollten, gebt doch bitte kurz Bescheid. Danke!

[18. Mai] Der Server lief seine erste Woche stabil & fix, prima. Packen wir die nächsten Updates an ;-)

Julia in Maschinenraum

Neu a.k.a. stabiler, kräftiger und mit viel Luft nach oben

Unser neuer Server ist da – und schnurrt, dass es eine Freude ist! Nach dem Hickhack der letzten Wochen freuen wir uns umso mehr, nun einen deutschen Partner gefunden zu haben, der die künftige Infrastruktur für mite. bereitstellt. Diese und die kommende Woche werden wir die Architektur aufsetzen und in aller Ausführlichkeit Tests fahren; der darauffolgende tatsächliche Umzug der Applikation wird nocheinmal separat angekündigt.

Mit Erfahrungswerten unter realer Last können wir natürlich noch nicht aufwarten, doch dafür nackte Zahlen ausplaudern: Ein Rootserver mit Intel Quadcore CPU, satten 4GB Arbeitsspeicher und einem RAID1-Festplattenverbund dient als kommender Maschinenraum – was kurz gesagt etwa einer Vervierfachung der jetzigen Kapazität entspricht.

Auf dem Server betreiben wir insgesamt fünf XEN-Instanzen: Einen Webserver, zwei Anwendungsserver, einen Datenbankserver und einen Server zur Auslagerung von langsamen Prozessen wie manuellen Backups oder dem E-Mail-Versand. Durch die klare Trennung der verschiedenen Dienste hoffen wir auf einen wesentlich stabileren Betrieb; der Geschwindigkeitsgewinn ist bereits jetzt deutlich spürbar.

Das in München gelegene Rechenzentrum entspricht hohen Sicherheitsstandards und ist wie üblich gegen etwaige Stromausfälle, Brände etc. abgesichert. Selbstverständlich werden wir wie bisher eure Daten auch physisch redundant sichern – und zwar täglich. Der bisherige Kontakt ließ sich ebenso kompetent wie auch zuverlässig und freundlich an. Wollen wir hoffen, dass dem mindestens so bleibt!

Jau, ein gutes Gefühl ;-)

Julia in Maschinenraum