Domande generali

D: Cos'è Amazon CodeGuru?

Amazon CodeGuru è uno strumento di sviluppo gestito da machine learning che fornisce suggerimenti intelligenti per migliorare la qualità del codice e identificare le righe di codice più costose di un'applicazione.

D: Che cosa è possibile fare con Amazon CodeGuru?

Amazon CodeGuru contiene due componenti: Amazon CodeGuru Reviewer e Amazon CodeGuru Profiler. Amazon CodeGuru Reviewer utilizza il machine learning per identificare i problemi critici e i bug difficili da trovare durante lo sviluppo dell'applicazione al fine di migliorare la qualità del codice. Amazon CodeGuru Profiler ottimizza la prestazione delle applicazioni eseguite in produzione e identifica le righe di codice più costose, riducendo significativamente i costi operativi.

D: Come si inizia ad utilizzare Amazon CodeGuru?

Amazon CodeGuru è ora generalmente disponibile. È possibile iniziare ad utilizzarlo subito nella console di Amazon CodeGuru.

Per iniziare ad utilizzare Amazon CodeGuru Reviewer, accedi alla console di Amazon CodeGuru Reviewer. Qui potrai associare un repository di codice esistente su GitHub, GitHub Enterprise, Bitbucket o AWS CodeCommit. Dopo una fase di configurazione singola, Amazon CodeGuru Reviewer inizia ad analizzare il codice e a fornire consigli su come migliorarlo direttamente all'interno della richiesta pull o del repository del codice.

È inoltre possibile avviare la profilatura delle tue applicazioni in pochi minuti. Per iniziare ad utilizzare Amazon CodeGuru Profiler, accedi alla console di CodeGuru Profiler. Qui è possibile configurare un gruppo di profiling per la tua applicazione. Avvia l'applicazione con l'agente di profilatura sulla riga di comando o segui i passaggi per utilizzare uno dei metodi personalizzati descritti. È possibile consentire l'esecuzione continua di Amazon CodeGuru Profiler così da poter rilevare in maniera proattiva i problemi di prestazione nelle applicazioni attive.

D: In quali regioni AWS è disponibile Amazon CodeGuru?

Per le regioni AWS supportate, consulta la tabella delle regioni AWS per l'infrastruttura globale AWS. Per ulteriori informazioni, consulta la pagina Regioni ed endpoint nel documento AWS General Reference.

Amazon CodeGuru Reviewer

D: Cos'è Amazon CodeGuru Reviewer?

Amazon CodeGuru Reviewer è un servizio automatizzato per la revisione del codice che identifica difetti critici e la mancata conformità alle best practice di programmazione per il codice Java. Il servizio analizza le righe di codice all'interno di una richiesta pull e fornisce suggerimenti intelligenti in base agli standard appresi dai progetti open source più importanti e dalla base di codice Amazon. Amazon CodeGuru Reviewer si integra in modo perfetto con i flussi di lavoro di revisione del codice esistenti sui sistemi di controllo del codice sorgente più utilizzati, come GitHub, GitHub Enterprise, Bitbucket e AWS CodeCommit. Inoltre, fornisce suggerimenti eseguibili per migliorare la qualità del codice.

D: Quali linguaggi di programmazione e repository di codice sorgente sono supportati?

Al momento, Amazon CodeGuru Reviewer supporta il codice Java archiviato su GitHub, GitHub Enterprise, Bitbucket e i repository di AWS CodeCommit.

D: Quali tipi di problemi sono rilevati da Amazon CodeGuru Reviewer?

Amazon CodeGuru Reviewer verifica la presenza di problemi di concorrenza, di potenziali race condition, di input impuri o dannosi o di un trattamento inappropriato di dati sensibili come le credenziali e la perdita di risorse. Inoltre, rileva le race condition e i deadlock nel codice concorrente. Suggerisce inoltre le best practice AWS e Java e rileva i codici clonati che potrebbero essere consolidati per una migliore gestibilità del codice.
D: Come si inizia ad utilizzare Amazon CodeGuru Reviewer?

Accedi alla console di Amazon CodeGuru per integrare i suggerimenti di Amazon CodeGuru Reviewer direttamente all'interno delle richieste pull del tuo codice. È possibile iniziare accedendo alla console di CodeGuru e seguendo i passaggi per associare i repository di AWS CodeCommit, GitHub, GitHub Enterprise e Bitbucket per ricevere i suggerimenti di Amazon CodeGuru Reviewer. Una volta abilitato, Amazon CodeGuru Reviewer fornirà automaticamente suggerimenti intelligenti sotto forma di commenti sulle richieste pull generate per i repository connessi.

D: Amazon CodeGuru Reviewer accede al mio codice?

Amazon CodeGuru Reviewer richiede l'accesso in sola lettura al tuo codice allo scopo di generare i suggerimenti. La tua fiducia, la tua privacy e la sicurezza dei tuoi contenuti rappresentano la nostra massima priorità. Implementiamo controlli adeguati, tra cui la crittografia durante i trasferimenti, per impedire gli accessi non autorizzati e la divulgazione dei contenuti e per garantire che l'utilizzo da parte nostra sia conforme ai nostri impegni nei tuoi confronti. Per ulteriori informazioni, consulta le Domande frequenti sulla privacy dei dati.

D: Amazon CodeGuru Reviewer memorizza una copia del mio codice?

No, Amazon CodeGuru Reviewer non archivia il tuo codice sorgente.

D: In che modo Amazon CodeGuru Reviewer viene istruito per fornire suggerimenti intelligenti?

Amazon CodeGuru Reviewer viene istruito tramite modelli di regole di associazione e di machine learning soggetti a supervisione che uniscono regressione logistica e reti neurali.

Ad esempio, durante la fase di istruzione per il rilevamento della mancata conformità alle best practice AWS, Amazon CodeGuru Reviewer effettua il mining delle basi di codici Amazon tramite tecniche di ricerca e modelli sensibili alla località per le richieste pull che includono chiamate API di AWS. Il servizio analizza le modifiche al codice apportate per migliorarne la qualità e ne effettua i riferimenti incrociati rispetto ai dati della documentazione. Il risultato è la creazione di un nuovo insieme di regole che Reviewer ti suggerisce come best practice durante l'analisi del tuo codice.
Durante la fase di istruzione per la perdita di risorse e dati sensibili, il servizio esegue un'analisi completa del codice in cerca dei percorsi che utilizzano la risorsa o i dati sensibili, crea funzioni che li rappresentano e le utilizza come input per i modelli di regressione logistica e per le reti neurali convoluzionali.

Sia per il modello basato su regole che per quello basato sul machine learning, Amazon CodeGuru Reviewer impiega il feedback fornito sotto forma di etichette e migliora in maniera iterativa la qualità dei rilevatori del codice.

Amazon CodeGuru Profiler

D: Cos'è Amazon CodeGuru Profiler?

Amazon CodeGuru Profiler aiuta gli sviluppatori a comprendere in modo semplice il comportamento in runtime delle proprie applicazioni, a migliorare le prestazioni e a diminuire i costi di elaborazione. Amazon CodeGuru Profiler analizza il profilo di runtime dell'applicazione e fornisce suggerimenti intelligenti e visualizzazioni che guidano gli sviluppatori al miglioramento delle prestazioni delle parti più pertinenti del codice.

D: Cos'è un gruppo di profiling?

Un gruppo di profiling è un raggruppamento logico creato da te. Rappresenta i limiti di un'applicazione. Ad esempio, in un'architettura di microservizi, un gruppo di profiling aggrega i profili dei microservizi assegnati e ne produce un profilo unico.

D: Il codice comprende già un servizio completo di registrazione. Occorre comunque effettuare la profilatura?

Registrare il tempo di esecuzione funziona solo in un numero limitato di casi perché la registrazione è solo in grado di monitorare la latenza (non l'utilizzo della CPU) e implementarlo richiede molto tempo perché gli sviluppatori devono registrare ogni funzione in un'applicazione (senza alcun impatto sulla prestazione dell'applicazione), rimanendo senza gli strumenti necessari per monitorare ed eseguire efficacemente la risoluzione dei problemi di applicazioni in produzione. Ecco dove entra in gioco la profilatura: Amazon CodeGuru Profiler è stato progettato per raccogliere i dati su qualsiasi evento che si verifica nel comportamento dell'applicazione, indipendentemente dalla situazione. CodeGuru Profiler utilizza una knowledge base di inefficienze di prestazione riscontrate più di frequente al fine di rilevare automaticamente le sequenze di codice nell'applicazione attiva che compromettono le sue prestazioni. Dunque, gli sviluppatori possono seguire i suggerimenti forniti per risolvere i problemi riscontrati.

D: In che modo Amazon CodeGuru Profiler differisce dalle APM tradizionali e dai profiler autonomi?

Le APM tradizionali forniscono dati utili sul monitoraggio, sulla tracciatura e sulle prestazioni delle applicazioni. Amazon CodeGuru Profiler integra queste funzionalità APM offrendo la visualizzazione dei dati di runtime dell'applicazione e suggerimenti eseguibili per i problemi di prestazione riscontrati. Utilizza inoltre il machine learning per rilevare e avvisare riguardo ad anomalie nel profilo dell'applicazione, indicando le righe di codice anomale. Amazon CodeGuru Profiler ti consente di individuare facilmente le parti di codice che offrono le migliori opportunità di ottimizzazione delle prestazioni, nonché potenziali risparmi e ricevere indicazioni su come procedere senza dover contare su competenze specializzate in ambito tecnico. Amazon CodeGuru Profiler esegue la profilatura delle istanze EC2, dei container e delle piattaforme di calcolo serverless inclusa AWS Lambda. Inoltre, alcuni profiler autonomi sono progettati per essere eseguiti solo in ambienti di test, mentre Amazon CodeGuru Profiler è stato progettato per l'esecuzione continua in produzione, con carichi di traffico di produzione e senza interferire con l'applicazione. Si tratta di un aspetto utile durante la fase di risoluzione dei problemi operativi in produzione, anche in caso di esecuzione su host bare metal.

D: Quali tipi di applicazione è possibile profilare?

Amazon CodeGuru Profiler funziona con le applicazioni ospitate da Amazon EC2, le applicazioni in container eseguite su Amazon ECS e Amazon EKS, nonché le applicazioni serverless in esecuzione su AWS Fargate e AWS Lambda.

Q: In che modo il profiler CodeGuru ha un impatto sulla prestazione delle applicazioni ospitate da AWS Lambda?

L'agente di Amazon CodeGuru Profiler utilizza le risorse (CPU, memoria) allocate alle funzioni di AWS Lambda. È stato messo a punto per avere un impatto minimo sulla prestazione dell'applicazione mentre viene eseguito in quanto thread in-process. Se l'applicazione consuma la maggior parte delle risorse nella funzione AWS Lambda, considera l'aumento delle risorse per abilitare il funzionamento adeguato dell'agente.

D: Quali linguaggi di programmazione sono supportati?

Amazon CodeGuru Profiler supporta le applicazioni JVM inclusi Java, Scala, Kotlin etc.

D: Come funziona Amazon CodeGuru Profiler?

Amazon CodeGuru Profiler è composto da tre parti: un agente, il servizio profiler e i suggerimenti intelligenti. L'agente viene avviato con l'applicazione sulla riga di comando e viene eseguito in forma di thread in-process come parte dell'applicazione. Raccoglie dati da ognuna delle istanze del servizio in cui l'agente è in esecuzione e li invia ogni 10 minuti al servizio profiler, dove vengono aggregati. A questo punto, Amazon CodeGuru Profiler pubblica i dati del profilo in grafici a fiamma interattivi che consentono la visualizzazione delle prestazioni della tua applicazione. Inoltre, Amazon CodeGuru Profiler analizza di continuo i dati profilati e li confronta alle best practice di Amazon e dell'ingegneria delle prestazioni. Inoltre, il servizio ti invia suggerimenti intelligenti quando vengono rilevati problemi di prestazione. Utilizza inoltre il machine learning per analizzare di continuo i dati del runtime dell'applicazione e allerta quando rileva anomalie nel profilo dell'applicazione e indica le righe di codice anomale.

Product-Page_Standard-Icons_01_Product-Features_SqInk
Ulteriori informazioni sui prezzi

Visita la pagina dei prezzi di Amazon CodeGuru.

Ulteriori informazioni 
Product-Page_Standard-Icons_02_Sign-Up_SqInk
Registrati per creare un account gratuito

Ottieni accesso istantaneo al piano gratuito di AWS. 

Registrati 
Product-Page_Standard-Icons_03_Start-Building_SqInk
Inizia a creare nella console

Inizia subito a utilizzare Amazon CodeGuru nella console di gestione AWS.

Accedi