2016-04-26 13 views
0

Suche in gcloud log Shell-Befehlszeile, begann ich mit einem klassischen Beispiel:Stackdriver gcloud log Schreibdurchsatz

gcloud beta logging write --payload-type=struct my-test-log "{\"message\": \"My second entry\", \"weather\": \"aaaaa\"}" 

Es funktioniert gut, so überprüfte ich die throughputwith den folgenden Code seiner Werke veru Krautsalat (ca. 2 notiert eine Sekunde) ist dies der beste Weg, dies zu tun?

Hier ist mein Beispielcode

tail -F -q -n0 /root/logs/general/*.log | while read line 
do 
    echo $line 
    b=`date` 
    gcloud beta logging write --payload-type=struct my-test-log "{\"message\": \"My second entryi $b\", \"weather\": \"aaaaa\"}" 
done 

Antwort

2

Wenn Sie jede Befehlsausführung übernehmen nimmt around 150ms at best, können Sie nur eine Handvoll von Einträgen pro Sekunde schreiben. Sie können versuchen, die zu verwenden. Leider kann die Befehlszeile derzeit nur jeweils einen Eintrag schreiben. Wir werden prüfen, ob es möglich ist, mehrere Einträge gleichzeitig zu schreiben.

Wenn Sie eine große Anzahl von Nachrichten schnell streamen möchten, können Sie unter Pub/Sub nachsehen.

+0

Also, wenn ich richtig verstehe, mit der aktuellen 500 ms Antwort bei der Verwendung von Stack-Treiber ist das Quta-Limit nicht relevant, weil ich keine Fähigkeiten haben werde, um sogar in die Nähe zu kommen. Es ist ein Problem –

+0

500ms Antwort ist keine Stackdriver-Einschränkung, es hängt von Ihrer Internetverbindung ab. Im Allgemeinen dauert es, wenn Sie eine HTTP-Anfrage über das Internet machen, höchstens 100ms, je nachdem, wo Sie sich befinden und woher die Anfrage kommt. Aus diesem Grund sollten Sie einen Batch- oder Stream-Vorgang ausführen, um mehr Durchsatz zu erzielen. – Vilas

Verwandte Themen