Finden Sie mit Amazon CodeGuru Ihre teuersten Codezeilen

Amazon CodeGuru ist ein Entwickler-Tool, das auf Basis von Machine Learning intelligente Empfehlungen für die Verbesserung der Codequalität liefert und die teuersten Codezeilen in einer Anwendung findet. Es führt automatisierte Code-Prüfungen durch und gibt Empfehlungen zur Anwendungsleistung.

Amazon CodeGuru Profiler

CodeGuru Profiler ist stets auf der Suche nach Optimierungen der Anwendungsleistung, der Identifizierung der "teuersten" Codezeilen und der Empfehlung von Möglichkeiten zur Behebung, um die CPU-Auslastung zu verringern, die Rechenkosten zu senken und die Anwendungsleistung zu verbessern. Beispielsweise kann CodeGuru Profiler erkennen, wann Ihre Anwendung übermäßige CPU-Kapazität in einer Protokollierungsroutine beansprucht, anstatt die Kerngeschäftslogik umzusetzen.

Das Laufzeitverhalten von Anwendungen verstehen

CodeGuru Profiler analysiert kontinuierlich die CPU-Auslastung und Latenzmerkmale der Anwendung, um Ihnen zu zeigen, wo Sie die meisten Zyklen oder die meiste Zeit in Ihrer Anwendung verbringen. Diese Analyse wird in einem interaktiven Flammendiagramm angezeigt, das leicht verständlich visuell darstellt, welche Codepfade die meisten Ressourcen verbrauchen, ob die Anwendung wie erwartet läuft und weitere Optimierungspotenziale sichtbar macht.

CodeGuru_Profiler
CodeGuru_Profiler
 Zum Vergrößern anklicken

Flammendiagramme stellen die Leistung Ihrer Anwendung visuell dar, indem sie sämtliche Stack-Traces zu einem bestimmten Zeitpunkt aggregieren. Mit Hilfe eines Flammendiagramms können Sie besser verstehen, welche Pfade die meisten Ressourcen verbrauchen, ob die Anwendung wie erwartet läuft und weitere Optimierungspotenziale sichtbar machen. Zum Beispiel wird für die Methode UploadGreyImage 134.868 USD pro Jahr ausgegeben und dieser Vorgang verbraucht dabei 10,22 % der Zeit. Wenn Sie also nicht erwartet haben, dass sie so viel Geld kostet und Zeit in Anspruch nimmt, sollten Sie nachforschen.

Intelligente Empfehlungen

CodeGuru Profiler identifiziert Leistungsdefizite Ihrer Anwendung automatisch und gibt intelligente Empfehlungen ab, wie diese zu beheben sind. Dank dieser Empfehlungen können Sie die kosten- bzw. ressourcenintensivsten in Ihrem Code enthaltenen Methoden ermitteln und optimieren – auch wenn Sie kein Experte im Bereich Performance Engineering sind. Mit Hilfe dieser Optimierungen reduzieren Sie Infrastrukturkosten, reduzietren die Latenz und verbessern das Endnuztererlebniss im Allgemeinen.

CodeGuru_Profiler-1
CodeGuru_Profiler-1
 Zum Vergrößern anklicken

Wenn Amazon CodeGuru Profiler Möglichkeiten zur Optimierung der Anwendungsleistung erkennt, wird erläutert, warum eine Änderung empfohlen wird, was das Problem verursacht, wie es behoben werden kann und wo sich dieses Problem im Code auf Ihre Anwendung auswirkt. Diese Empfehlung zeigt Ihnen, dass diese teure Codezeile Sie 182.160 USD pro Jahr kostet und 2,97 Ihrer aktiven CPU-Kosten ausmacht. Wenn Sie die vorgeschlagenen Lösungsschritte befolgen, können Sie bis zu 182.160 USD sparen.

Anomalieerkennung

Amazon CodeGuru Profiler analysiert kontinuierlich Ihre Anwendungsprofile in Echtzeit und erkennt Anomalien im Verhalten Ihrer Anwendung und ihrer Methoden. Jede Anomalie wird im Empfehlungsbericht verfolgt, und Sie können Zeitreihen darüber sehen, wie sich die Latenz der Methode im Laufe der Zeit verhält, wobei Anomalien deutlich hervorgehoben werden. Falls konfiguriert, wird auch eine Amazon SNS-Benachrichtigung gesendet, wenn eine neue Anomalie entdeckt wird.

CodeGuru_AD
CodeGuru_AD
 Zum Vergrößern anklicken
Always-On-Profilierung von Anwendungen in der Produktion

CodeGuru Profiler wurde entwickelt, um mit minimalem CPU-Aufwand fortwährend in der Produktion zu laufen, d. h. Sie können ihn unter minimaler Leistungsbeeinträchtigung konstant laufen lassen. So können Sie Ihre Anwendung mittels realer Kundenverkehrsmuster profilieren und Problembehebungen durchführen und so mit Leichtigkeit etwaige Leistungsdefizite entdecken, die in Ihrer Testumgebung ggf. verborgen geblieben wären.

Amazon CodeGuru Reviewer

Der Amazon CodeGuru Reviewer findet in Ihrem Code enthaltenen Probleme und macht Vorschläge zu deren Behebung. CodeGuru Reviewer erkennt beispielsweise Abweichungen von den bewährten Verfahren zur Nutzung von AWS-APIs und -SDKs und identifiziert darüber hinaus Nebenläufigkeitsprobleme, Ressourcenlecks und inkorrekte Eingabevalidierungen. Sie können vorhandene Code-Repositorys in GitHub, GitHub Enterprise, Bitbucket oder AWS CodeCommit mit CodeGuru verknüpfen, um mit der Überprüfung des Codes zu beginnen.

Automatisierte Empfehlungen

CodeGuru Reviewer analysiert Codeanfrageanforderungen automatisch, um kritische Probleme zu finden und gibt intelligente Empfehlungen zur Auflösung von Codemängeln innerhalb der Anfrageanforderung. CodeGuru Reviewer identifiziert Code-Qualitätsprobleme in neun großen Kategorien:

  • Bewährte AWS-Methoden: Korrekte Verwendung von AWS APIs (z. B. Polling, Paginierung)
  • Bewährte Java-Methoden: Korrekte Verwendung der beliebten Java-Sprache und -Bibliotheksfunktionen
  • Gleichzeitigkeit: Erkennt fehlende Synchronisierung, die zu falscher Funktionalität oder übermäßiger Synchronisierung und damit zu Leistungsproblemen führt.
  • Sackgassen: Überprüft die Koordination zwischen gleichzeitigen Threads
  • Ressourcenlecks: Korrekte Handhabung von Ressourcen (z. B. Freigabe von Datenbankverbindungen)
  • Lecks sensibler Informationen: Lecks von persönlich identifizierbaren Informationen (z. B. Protokollierung von Kreditkartendaten)
  • Häufige Code-Fehler: Schwer zu findende Fehler, z. B. nicht für jeden Lambda-Aufruf einen Client zu erzeugen
  • Code-Klonen: Identifiziert duplizierten Code, der für eine bessere Wartbarkeit des Codes konsolidiert werden könnte
  • Eingabevalidierung: Überprüft auf fehlerhafte oder bösartige Daten aus nicht vertrauenswürdigen Quellen
CodeGuru-Reviewer1
CodeGuru-Reviewer1
 Zum Vergrößern anklicken

Kurz gesagt, Amazon CodeGuru stattet Ihr Entwicklungsteam mit Tools aus, um im Softwareentwicklungsprozess ein hohes Maß an Codierungsstandards einzuhalten.

Kunden können alle Code-Rezensionen auch auf der Konsolenseite „Code-Rezensionen“ (Rezensenten-Abschnitt) einsehen. Auf der Seite werden alle Code-Überprüfungsinformationen aufgeführt. Hierzu zählen unter anderem der Status der Code-Überprüfung, das Repository und die Anzahl von Empfehlungen. Benutzer können auf eine erfolgreich abgeschlossene Code-Überprüfung klicken, um sich Empfehlungsdetails anzusehen, nach Empfehlungen zu suchen und die Anzahl analysierter Zeilen anzuzeigen. Außerdem können Benutzer Feedback zu CodeGuru-Empfehlungen geben, indem sie unterhalb der Empfehlung auf das Symbol mit dem Daumen nach oben oder auf das Symbol mit dem Daumen nach unten klicken.

CodeGuru-Feature-1
CodeGuru-Feature-1
 Zum Vergrößern anklicken
CodeGuru-Feature-2
CodeGuru-Feature-2
 Zum Vergrößern klicken
Volle Repository-Analyse

Kunden können automatisierte Codeprüfungsempfehlungen für verknüpfte Repositorys und allen Code (nicht nur inkrementelle Änderungen über Pull-Anforderungen) unter einem bestimmten Codezweig erhalten. Kundenanwendungsfälle umfassen das Anbieten von Codeprüfungsempfehlungen bei der Codemigration, Code-Due-Diligence und regelmäßige Codewartbarkeitsinitiativen. Kunden können zur Registerkarte „Repository-Analyse“ auf der Seite „Codeprüfungen“ navigieren, um eine neue Analyse für ein volles Repository auszulösen.

RepostoryAnalysis
RepostoryAnalysis

Mit der Pull-Anforderungs- und vollen Repository-Analyse können neue Kundden bei Reviewer 1) ihr Repository verknüpfen, 2) eine volle Repository-Analyse initiieren, 3) kontinuierlich Pull-Anforderungen mit inkrementellen Code-Änderungen analysieren und 4) regelmäßige Neuanalysen des Repositorys durchführen, um die Codequalität zu gewährleisten.

Product-Page_Standard-Icons_01_Product-Features_SqInk
Mehr über die Produktpreisgestaltung erfahren

Besuchen Sie die Amazon CodeGuru-Preisseite.

Weitere Informationen 
Product-Page_Standard-Icons_02_Sign-Up_SqInk
Registrieren Sie sich und erhalten Sie ein kostenloses Konto

Sie erhalten sofort Zugriff auf das kostenlose AWS-Kontingent. 

Registrieren 
Product-Page_Standard-Icons_03_Start-Building_SqInk
Beginnen Sie mit der Entwicklung in der Konsole

Beginnen Sie mit dem Erstellen mit Amazon CodeGuru in der AWS-Managementkonsole.

Anmelden