Konfigurowanie agenta AWS do monitorowania Lambda

Agent AWS śledzi istniejące wersje funkcji Lambda i gromadzi powiązane z nimi metryki czasu wykonywania.

Aby skonfigurować agenta Instana AWS , należy skonfigurować agenta AWS dla monitorowania AWS Lambda , a w razie potrzeby użyć konfiguracji proxy.

Konfigurowanie agenta AWS na potrzeby monitorowania platformy AWS Lambda

Przed skonfigurowaniem agenta AWS dla monitorowania AWS Lambda należy skonfigurować konto AWS i wybrać region, w którym mają zostać wdrożone funkcje Lambda AWS . Więcej informacji na ten temat zawiera sekcja AgentAWS.

Kroki konfiguracji są wymagane przez kilka funkcji związanych z produktem AWS Lambda, w tym dynamiczne zapytania Focus, które korzystają z operatora entity.aws.lambda.version , nieograniczonych znaczników analitycznych, takich jak faas.functionversion, oraz panele kontrolne dedykowane dla funkcji i wersji funkcji produktu AWS Lambda.

Aby skonfigurować agenta AWS dla monitorowania AWS Lambda, należy zastosować te konfiguracje do agenta AWS.

Nadawanie dodatkowych uprawnień IAM

Aby gromadzić wielkości mierzone i wersje dla funkcji Lambda AWS , należy nadać agentowi AWS następujące dodatkowe uprawnienia IAM:

  • cloudwatch:GetMetricStatistics
  • cloudwatch:GetMetricData
  • lambda:ListTags
  • lambda:ListFunctions
  • lambda:ListVersionsByFunction
  • lambda:GetFunctionConfiguration
  • lambda:ListEventSourceMappings

Więcej informacji na temat nadawania uprawnień IAM agentowi AWS zawiera dokumentacja instalowania agentaAWS .

Wersje produktu Monitoring Lambda

Aby włączyć monitorowanie wersji Lambda, nadaj agentowi AWS uprawnienie lambda:ListVersionsByFunction IAM. Jeśli brakuje wymaganego uprawnienia, Instana agreguje wielkości mierzone dla wszystkich wersji.

Domyślnie, Instana monitoruje pięć najnowszych wersji każdej funkcji Lambda indywidualnie. Można użyć następującej konfiguracji, aby ustawić liczbę wersji, dla których Instana pobiera dane:

com.instana.plugin.aws.lambda:
  number_of_versions: 3 # default 5

Można skonfigurować do 20 wersji Lambda.

Można wyłączyć monitorowanie poszczególnych wersji Lambda, a następnie Instana agreguje wielkości mierzone dla wszystkich wersji. W tym przypadku pomiary zagregowane są przyłączone do wersji \$LATEST dla funkcji Lambda.

Uwaga: Po wprowadzeniu zmian w konfiguracji należy zrestartować agenta.

Wyłączanie pobierania wersji i metryk Lambda

Aby całkowicie wyłączyć monitorowanie instancji Lambda, należy użyć następującej konfiguracji:

com.instana.plugin.aws.lambda:
  enabled: false

Aby wyłączyć tylko pobieranie danych wersji, należy użyć następującej konfiguracji:

com.instana.plugin.aws.lambda:
  fetch_versions: false

Zmiana szybkości odpytywania

Pomiary dla Lambda są pobierane co 5 minut. Odstęp czasu można zmienić za pomocą następującej konfiguracji agenta w pliku <agent_install_dir>/etc/instana/configuration.yml:

com.instana.plugin.aws.lambda:
  cloudwatch_period: 300

Można określić, jak często czujniki odpytują oznaczone zasoby AWS , używając właściwości konfiguracyjnej tagged-services-poll-rate (domyślnie: 300 sekund).

Aby zdefiniować częstotliwość odpytywania przez czujniki oznaczonych zasobów, należy użyć następującej konfiguracji:

com.instana.plugin.aws:
  tagged-services-poll-rate: 60 #default 300

Korzystanie z konfiguracji proxy

Aby skonfigurować agenta AWS do korzystania z konfiguracji proxy, dodaj następujące ustawienia konfiguracyjne agenta:

com.instana.plugin.aws.lambda:
  proxy_host: 'example.com' # proxy host name or ip address
  proxy_port: 3128 # proxy port
  proxy_protocol: 'HTTP' # proxy protocol: HTTP or HTTPS
  proxy_username: 'username' # OPTIONAL: proxy username
  proxy_password: 'password' # OPTIONAL: proxy password

Filtrowanie

Można zdefiniować wiele znaczników, rozdzielając je przecinkami. Użyj znaczników jako pary klucz-wartość rozdzielonych znakiem : . Aby uprościć proces konfiguracji, można zdefiniować znaczniki, które mają być uwzględniane lub wykluczane z wykrywania. Jeśli znaczniki są definiowane na obu listach (include i exclude), lista exclude ma wyższy priorytet. Jeśli filtrowanie usług nie jest wymagane, nie należy definiować konfiguracji. Definiowanie wszystkich wartości w celu włączenia filtrowania nie jest obowiązkowe.

Aby uwzględnić usługi według znaczników w wykrywaniu, należy użyć następującej konfiguracji:

com.instana.plugin.aws.lambda:
  include_tags: # Comma separated list of tags in key:value format (e.g. env:prod,env:staging)

Aby wykluczyć usługi według znaczników z wykrywania, należy użyć następującej konfiguracji:

com.instana.plugin.aws.lambda:
  exclude_tags: # Comma separated list of tags in key:value format (e.g. env:dev,env:test)

Usługi AWS bez znaczników są monitorowane domyślnie, ale można je wykluczyć, ustawiając w polu include_untagged wartość false:

com.instana.plugin.aws.lambda:
  include_untagged: false # True value by default

Monitorowanie wielu kont AWS

Aby skonfigurować monitorowanie wielu kont AWS z jednym agentem AWS w tym samym regionie, należy zapoznać się z dokumentacją Monitorowanie wielu kont AWS .

Nadpisywanie profili: podejście oparte na profilach nazwanych AWS

Aby przesłonić profile, które muszą być używane do monitorowania Lambda, należy użyć następującej konfiguracji:

com.instana.plugin.aws.lambda:
  profile_names:
    - 'profile2'
    - 'profile3'

Uwaga: Definiowanie profili na poziomie usług nadpisuje globalną konfigurację profili AWS .

Nadpisywanie ról IAM: podejście STS AWS

Aby przesłonić role IAM używane do monitorowania Lambda, należy użyć następującej konfiguracji:

com.instana.plugin.aws.lambda:
  role_arns:
    - 'arn:aws:iam::<account_1_id>:role/<role_1_name>'
    - 'arn:aws:iam::<account_2_id>:role/<role_2_name>'

Uwaga: Definiowanie ról IAM na poziomie usługi nadpisuje globalną konfigurację ról IAM AWS .