13

Kiedy żądam plików dziennika dla elastycznego środowiska beanstalk za pośrednictwem interfejsu internetowego lub "eb logów", otrzymuję zawartość plików dziennika /var/log/eb-version-deployment.log,/opt/python/log /httpd.out, /var/log/cfn-hup.log i kilka innych.Czy mogę dodawać niestandardowe pliki dziennika do dzienników przechwyconych przez polecenie "eb logs" elastycznej beanstalk?

Czy istnieje sposób na dodanie dodatkowego dziennika, takiego jak test_output.log do dzienników zebranych przez interfejs sieciowy i "dzienniki e-mail"?

Odpowiedz

2

Tak! Jest sposób. NIGDY nie powinieneś używać ssh w swoich instancjach Elastic Beanstalk.

Sprawdziliśmy, sprawdzając plik eb-activity.log.

W zależności od rodzaju środowiska (używam Pythona z Beanstalk), lokalizacje, w których można umieszczać pliki dzienników, są różne. Musisz sprawdzić eb-activity.log.

Na przykład, z typem środowiska Pythona, w eb-activity.log powinieneś zobaczyć:

[2015-09-15T20:29:36.102Z] INFO [2403] - [Initialization/PreInitStage0/PreInitHook/01setuplogs.sh] : Completed activity. Result: 
    + mkdir -p /opt/elasticbeanstalk/tasks/taillogs.d /opt/elasticbeanstalk/tasks/sytemtaillogs.d /opt/elasticbeanstalk/tasks/bundlelogs.d /opt/elasticbeanstalk/tasks/publishlogs.d 
    + /opt/elasticbeanstalk/bin/log-conf -n python '-l/opt/python/log/*' -t taillogs,systemtaillogs,bundlelogs 
    + /opt/elasticbeanstalk/bin/log-conf -n python-app '-l/opt/python/log/app.out.*' -t publishlogs 
    + /opt/elasticbeanstalk/bin/log-conf -n supervisord '-l/opt/python/log/supervisord.log.*' -t publishlogs 
    + /opt/elasticbeanstalk/bin/log-conf -nhttpd '-l/var/log/httpd/*' -f /opt/elasticbeanstalk/containerfiles/beanstalkhttpd 

Powyższe pokazuje, że Beanstalk konfiguruje rejestrowanie dla któregokolwiek z następującego pliku:

  • /opt/python/log/*
  • /opt/python/log/app.out.*
  • /opt/python/log/supervisord.log.*
  • /var/log/httpd/*

Oznacza to, że jeśli umieścić plik dziennika w /opt/python/log/, Beanstalk znajdzie je i przedstawić go, gdy "Wniosek Logs". Umieściłem moje pliki dziennika w /opt/python/log/, ponieważ jest dostępne przez grupę WSGI (która uruchamia moją aplikację). Byłoby nieco inaczej, gdybyś używał typu środowiska Ruby. Nadal możesz sprawdzić eb-activity.log, dla których skonfigurowano katalogi do rejestrowania.

16

Elastic Beanstalk wygląda w tym folderze plików konfiguracyjnych, co do którego loguje się do ogona:

/opt/elasticbeanstalk/tasks/taillogs.d/ 

Na moim polu Istnieje kilka plików tam

[[email protected] taillogs.d]$ ls -al 
total 32 
drwxr-xr-x 2 root root 4096 Sep 27 05:49 . 
drwxr-xr-x 6 root root 4096 Sep 27 05:49 .. 
-rw-r--r-- 1 root root 58 Sep 27 05:49 eb-activity.conf 
-rw-r--r-- 1 root root 35 Sep 27 05:49 eb-version-deployment.conf 
-rw-r--r-- 1 root root 16 Oct 15 03:44 httpd.conf 
-rw-r--r-- 1 root root 16 Oct 15 03:44 nginx.conf 
-rw-r--r-- 1 root root 26 Oct 15 03:44 nodejs.conf 
-rw-r--r-- 1 root root 29 Oct 15 03:44 npm.conf 

I każdy z nich ma jedną linię to coś takiego:

/var/log/nodejs/nodejs.log 

lub

/var/log/nginx/* 

Zastosowanie .ebextensions dodać plik konfiguracyjny do ogona własne kłody:

files: 
    "/opt/elasticbeanstalk/tasks/taillogs.d/my-app-logs.conf": 
    mode: "000755" 
    owner: root 
    group: root 
    content: | 
     /var/log/my-app.log 

Więcej informacji tutaj:

http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.logging.html#health-logs-extend

+0

Cześć, możemy pobrać plik dziennika django z docker pojemnik w elastycznej fasoli za pomocą tego. –

Powiązane problemy