Tutti i clienti di Edge per il cloud privato sono tenuti a inviare ad Apigee le statistiche sull'API il traffico proxy. Apigee consiglia ai clienti di caricare queste informazioni una volta al giorno, probabilmente la creazione di un cron job.
Devi inviare i dati per i deployment dell'API di produzione, ma non per le API in fase di sviluppo o test dei deployment. Nella maggior parte delle installazioni Edge, definirai le organizzazioni specifiche per le API di produzione. I dati inviati sono solo per la produzione organizzazioni e ambienti.
Per facilitare il caricamento di questi dati, Apigee fornisce la versione beta del
Riga di comando apigee-analytics-collector
utilità. Questa utilità invia il report sul volume di chiamate API ad Apigee. Ogni vantaggio per
L'installazione del cloud privato può utilizzare questa utilità per recuperare e segnalare i dati sul traffico a
Apigee.
Obbligatorio: contatta l'assistenza Apigee prima di caricare i dati
Prima di poter caricare dati su Apigee, devi contattare l'assistenza Apigee Edge per completare l'onboarding e il processo di sviluppo.
Installa apigee-analytics-collector
apigee-analytics-collector
è un valore RPM installato utilizzando l'utilità apigee-service
.
Dove installare
Il nodo su cui installi l'utilità apigee-analytics-collector
può essere qualsiasi
nodo che può accedere all'API di gestione perimetrale su Edge Management Server. Puoi installarlo
direttamente sul server di gestione, su un altro nodo dell'installazione di Edge o su un server
solo se il nodo è in grado di effettuare richieste API al server di gestione.
Accesso a Internet requisiti
Installa l'utilità apigee-analytics-collector
su un
con accesso esterno a internet. Quindi l'utility apigee-analytics-collector
possono caricare dati direttamente su Apigee.
Se non esistono nodi con accesso entrambi all'API di gestione perimetrale su Edge Management Server
e l'accesso a internet esterno, quindi puoi utilizzare l'API Edge Management per risparmiare il traffico
a livello locale. Devi quindi trasferire i dati su una macchina con accesso a internet per il caricamento su
Apigee. In questo scenario, non è necessario utilizzare apigee-analytics-collector
utilità. Consulta
Caricamento manuale dei dati su
Apigee per scoprire di più.
Installazione
Usa il seguente comando per installare l'utilità apigee-analytics-collector
. Poiché
stai installando un file RPM, questo comando deve essere eseguito dall'utente root o da un utente che ha
accesso completo a sudo. Per un accesso sudo completo, significa che l'utente dispone dell'accesso sudo per eseguire le stesse
come root.
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector install
Esecuzione di apigee-analytics-collector
Questa sezione descrive come eseguire l'utilità apigee-analytics-collector
.
Configurare un utente per l'esecuzione di apigee-analytics-collector
Devi eseguire apigee-analytics-collector
come non-root
utente. Questo utente deve avere accesso completo all'app "apigee" utente.
Per configurare un utente in modo che abbia accesso completo a "apigee" all'utente, utilizza il comando "visudo" su modifica il file sudoers per aggiungere:
analyticsUser ALL=(apigee) NOPASSWD: ALL
Dove analyticsUser è il nome utente della persona che esegue
l'utilità apigee-analytics-collector
.
Dopo l'installazione dell'utilità apigee-analytics-collector
e configurando l'utente, puoi testare l'utilità eseguendo il comando help per
l'utilità apigee-analytics-collector
:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic --help
Informazioni richieste per eseguire apigee-analytics-collector
Sono necessarie le seguenti informazioni per eseguire il comando apigee-analytics-collector
e inoltrare dati ad Apigee:
apigee_mgmt_api_uri
: l'URL di base dell'API Edge nella pagina di gestione Server. In genere questo URL ha il seguente formato:http://ms_IP:8080/v1
Dove ms_IP è l'indirizzo IP o il tuo server di gestione e 8080 è la porta usata dall'API Edge. Se hai creato una voce DNS per l'API Edge, l'URL è il modulo:
http://ms_DNS/v1
Se abiliti TLS sull'API di gestione perimetrale, il formato sarà:
https://ms_IP:8080/v1 https://ms_DNS/v1
apigee_mgmt_api_email
: l'indirizzo email di un account che ha accesso a API/stats
Edge. Spesso questo sarà l'email dell'amministratore del sistema perimetrale o l'email dell'amministratore dell'organizzazione per le tue organizzazioni di produzione.apigee_mgmt_api_password
: la password Edge per l'account specificato daapigee_mgmt_api_email
.apigee_analytics_client_id
e apigee_analytics_secret: Le tue credenziali per caricare i dati su Apigee. Invia un ticket con l'assistenza Apigee Edge per ottenereapigee_analytics_client_id
eapigee_analytics_secret
.
Comandi di esempio
Di seguito è riportato un esempio di comando per recuperare i dati sul traffico per tutte le organizzazioni e
ambienti nell'installazione Edge e caricare questi dati su Apigee. Nota come
usa apigee-service
per
esegui il comando apigee-analytics-collector
:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
Nota che il comando contiene tutte le informazioni richieste, come apigee_analytics_client_id e apigee_analytics_secret.
Dovresti visualizzare i risultati nel modulo:
[ { "org": "myOrg", "env": "prod", "time_range_start": "08/27/2016 00:00", "time_range_end": "08/30/2016 00:00", "response": [ { "store_org_env_metrics_hourly_v4": 1 } ] }, { "org": "VALIDATE", "env": "test", "time_range_start": "08/27/2016 00:00", "time_range_end": "08/30/2016 00:00", "response": [ { "store_org_env_metrics_hourly_v4": 1 } ] } ]
Utilizza le opzioni della riga di comando per il comando per controllarne le azioni. Utilizza le seguenti opzioni per specificare le organizzazioni e gli ambienti da includere nei dati generati:
-i, --include_orgs comma-separated list of items
-x, --exclude_orgs comma-separated list of items
-n, --include_envs comma-separated list of items
-e, --exclude_envs comma-separated list of items
Ad esempio, per specificare solo le organizzazioni e gli ambienti di produzione, utilizza
-i
(o --include_orgs
) e -n
(o
--include_envs)
opzioni:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
In questo esempio, i dati vengono raccolti solo dall'ambiente di produzione
myOrg
.
Per eseguire il dump dei dati in una schermata ed esaminarli prima di inviarli ad Apigee, utilizza -S
:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
L'opzione -S
omette i dati
su Apigee. Puoi quindi eseguire nuovamente il comando senza l'opzione -S
per inviare
ad Apigee.
Un motivo per utilizzare -S
è possibile visualizzare diversi tipi di dati a livello locale. Apigee richiede solo che tu
carica i dati sul traffico dell'API, ma l'opzione -D
ti consente di visualizzare i dati sull'API
prodotti, sviluppatori, app o proxy API. L'esempio seguente utilizza gli attributi -D
e
-S
opzioni per visualizzare i dati sviluppatore
a livello locale:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S -D devs \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
Includi l'opzione -v
per ottenere
un output dettagliato e l'opzione -R
per vedere i comandi curl generati da apigee-analytics-collector
:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S -R -v \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
La sezione successiva contiene un elenco completo delle opzioni della riga di comando.
Parametri comando
La tabella seguente elenca l'insieme completo di opzioni per la
Utilità apigee-analytics-collector
:
Comando | Descrizione |
---|---|
-h, --help |
Informazioni sull'utilizzo in output |
-D, --dimension dimension |
La dimensione del traffico da raccogliere. I valori validi sono:
|
-d, --days days
|
Il numero di dati dei giorni precedenti da raccogliere, a partire dalla data corrente. La il valore predefinito è 3. Se specifichi |
-m, --apigee_mgmt_api_uri apigee_mgmt_api_uri |
URL dell'API di gestione perimetrale. |
-u, --apigee_mgmt_api_email apigee_mgmt_api_email |
L'indirizzo email di un account con accesso alle API Edge |
-p, --apigee_mgmt_api_password apigee_mgmt_api_password |
La password associata all'account email dell'API Edge Management specificato da
|
-i, --include_orgs items
|
Un elenco separato da virgole di organizzazioni da includere nell'output. |
-x, --exclude_orgs items
|
Un elenco separato da virgole di organizzazioni da escludere dall'output. |
-n, --include_envs items
|
Un elenco separato da virgole di ambienti da includere nell'output. |
-e, --exclude_envs items
|
Un elenco separato da virgole di ambienti da includere dall'output. |
-o, --output path
|
Il percorso e il nome file per salvare l'output. |
-s, --time_range_start time_range_start
|
Intervallo di tempo da iniziare per eseguire query sulle statistiche sul traffico, nel formato: "MM/DD/YYYY HH:MM". Se specifichi |
-z, --time_range_end time_range_end
|
Fine dell'intervallo di tempo per l'esecuzione di query sulle statistiche sul traffico, nel formato: "01/04/2016 24:00". Se specifichi |
-t, --time_unit time_unit
|
Unità di tempo per i dati sul traffico. Il valore predefinito è
Se imposti |
-S, --standard_output
|
Scrivi l'output nel terminale (stdout) invece di caricarlo su Apigee. |
-c, --apigee_analytics_client_id apigee_analytics_client_id
|
Il tuo ID per il caricamento dei dati su Apigee. Invia un ticket con l'assistenza Apigee Edge a ottenere. |
-r, --apigee_analytics_secret apigee_analytics_secret
|
Il tuo secret per caricare i dati su Apigee. Invia un ticket con l'assistenza Apigee Edge a ottenere. |
-R, --include_curl_commands
|
Includi i comandi |
-v, --verbose
|
Mostra output dettagliato. |
Caricamento manuale di dati su Apigee
Apigee consiglia di installare l'utilità apigee-analytics-collector
su un
con accesso esterno a internet. Quindi l'utility apigee-analytics-collector
possono caricare dati direttamente su Apigee.
Tuttavia, se la macchina non dispone di un accesso esterno a internet, utilizza l'API Edge Management per
raccolgono dati sul traffico e poi usano i comandi curl
per caricarli su Apigee da un
con una macchina virtuale
accesso a internet. Devi ripetere la procedura per ogni organizzazione di produzione e
nell'installazione di Edge.
Utilizza il seguente comando curl
per raccogliere i dati sul traffico per un'organizzazione specifica e
per un intervallo di tempo specificato:
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://ms_IP:8080/v1/organizations/org_name/environments/env_name/stats/apiproxy?select=sum(message_count)&timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour"
Questo comando utilizza l'API Edge Get per il conteggio dei messaggi dell'API. In questo comando:
- apigee_mgmt_api_email:apigee_mgmt_api_password specifica indirizzo email di un account con accesso alle API Edge /stats.
- ms_IP è l'indirizzo IP o il nome DNS di Edge il server di gestione.
- org_name e env_name specifica tra organizzazioni e ambiente.
- apiproxy è la dimensione che raggruppa le metriche per proxy API.
MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour
specifica l'intervallo di tempo diviso in unità di tempo delle metriche da raccogliere. Nota che Il comandocurl
utilizza il codice esadecimale%20
per gli spazi nell'intervallo temporale intervallo.
Ad esempio, per raccogliere i conteggi dei messaggi proxy API ora per ora in un periodo di 24 ore, utilizza seguo chiamata API.
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://192.168.56.103:8080/v1/organizations/myOrg/environments/prod/stats/apiproxy?select=sum(message_count)&timeRange=01%2F01%2F2018%2000%3A00~01%2F02%2F2018%2000%3A00&timeUnit=hour"
Tieni presente che timeRange
contiene caratteri di codifica URL.
Dovresti vedere una risposta nel modulo:
{ "environments" : [ { "dimensions" : [ { "metrics" : [ { "name" : "sum(message_count)", "values": [ { "timestamp": 1514847600000, "value": "35.0" }, { "timestamp": 1514844000000, "value": "19.0" }, { "timestamp": 1514840400000, "value": "58.0" }, { "timestamp": 1514836800000, "value": "28.0" }, { "timestamp": 1514833200000, "value": "29.0" }, { "timestamp": 1514829600000, "value": "33.0" }, { "timestamp": 1514826000000, "value": "26.0" }, { "timestamp": 1514822400000, "value": "57.0" }, { "timestamp": 1514818800000, "value": "41.0" }, { "timestamp": 1514815200000, "value": "27.0" }, { "timestamp": 1514811600000, "value": "47.0" }, { "timestamp": 1514808000000, "value": "66.0" }, { "timestamp": 1514804400000, "value": "50.0" }, { "timestamp": 1514800800000, "value": "41.0" }, { "timestamp": 1514797200000, "value": "49.0" }, { "timestamp": 1514793600000, "value": "35.0" }, { "timestamp": 1514790000000, "value": "89.0" }, { "timestamp": 1514786400000, "value": "42.0" }, { "timestamp": 1514782800000, "value": "47.0" }, { "timestamp": 1514779200000, "value": "21.0" }, { "timestamp": 1514775600000, "value": "27.0" }, { "timestamp": 1514772000000, "value": "20.0" }, { "timestamp": 1514768400000, "value": "12.0" }, { "timestamp": 1514764800000, "value": "7.0" } ] } ], "name" : "proxy1" } ], "name" : "prod" } ], "metaData" : { "errors" : [ ], "notices" : [ "query served by:53dab80c-e811-4ba6-a3e7-b96f53433baa", "source pg:6b7bab33-e732-405c-a5dd-4782647ce096", "Table used: myorg.prod.agg_api" ] } }
Per caricare quei dati in Apigee da una macchina con accesso a internet, utilizza il seguente comando
Comando curl
:
curl -X POST -H 'Content-Type:application/json' \ -u apigee_analytics_client_id:apigee_analytics_secret \ https://nucleus-api-prod.apigee.com/v1/apigee-analytics-cli-api/traffic/orgs/org_name/apis -d '"environments"...'
Dove:
- apigee_analytics_client_id:apigee_analytics_secret specifica il tuo le credenziali per il caricamento su Apigee che hai ottenuto da Apigee.
- org_name specifica il nome dell'organizzazione.
- "environments"... contiene i risultati del comando
curl
che che hai utilizzato per raccogliere le statistiche riportate sopra.