PantherFlow 모범 사례
PantherFlow 쿼리 최적화하기
개요
PantherFlow 쿼리 결과가 가능한 한 빨리 반환되도록(및 검색으로 인한 Snowflake 비용을 최소화하려면) 아래 권장 사항을 따르는 것이 좋습니다.
적용 후에도 쿼리가 여전히 느리게 실행된다면:
쿼리의 시간 범위를 줄이세요.
반환된 행 수를 확인하여 쿼리하는 데이터 양을 확인하세요 — 데이터 양이 많으면 시간이 걸리는 것이 예상됩니다.
추가 도움이 필요하면 Panther 지원팀에 문의하세요.
일반 PantherFlow 권장 사항
다음을 사용하세요 limit 연산자
limit 연산자다음을 사용하세요 limit 연산자 쿼리가 반환할 최대 레코드 수를 지정하려면.
예시: panther_logs.public.aws_alb | limit 100
시간 범위 필터 사용
다음을 사용하세요 where 연산자 시간 범위로 필터링하려면(예: p_event_time). 시간 범위 필터가 있는 쿼리는 더 적은 마이크로 파티션에 접근하므로 결과를 더 빠르게 반환합니다.
예시: panther_logs.public.aws_alb | where p_event_time > time.ago(1d)
Mappings 사용 가능한 시간 함수는 여기에서.
사용 p_any fields
p_any fields로그 수집 중 Panther는 일반적인 보안 지표를 p_any fields로 추출하여 모든 데이터 소스에 걸쳐 속성 이름을 표준화합니다. p_any fields는 최적화된 열에 저장됩니다. 여러 로그 유형에 대해 서로 다른 이름의 필드를 사용하는 대신 p_any fields를 쿼리하는 것이 권장됩니다.
자세한 내용은 표준 필드.
예시: panther_logs.public.aws_alb | '10.0.0.0' in p_any_ip_addresses
다음을 사용하세요 project 연산자
project 연산자를 사용하지 않은 쿼리는 project 연산자 모든 열을 검색하므로 쿼리를 느리게 할 수 있습니다. 가능하면 조사에 필요한 필드만 쿼리하려면 project 를 사용하세요.
예시: panther_logs.public.aws_alb | project targetIp, targetPort
요약 실행
요약은 전체 로그 레코드를 가져오는 쿼리보다 빠르게 실행됩니다. 긴 기간의 로그를 조사하거나 조사 중인 시간 범위에 데이터 양이 얼마나 되는지 모를 때 요약을 사용하는 것이 특히 유용합니다.
전체 데이터 세트를 쿼리하는 대신 summarize 연산자를 사용하면 더 빠르게 실행되어 다음에 쿼리할 더 좁은 시간 범위를 결정하는 데 도움이 됩니다.
예시: panther_logs.public.aws_alb | summarize count=agg.count() by targetIp
Mappings 사용 가능한 집계 함수는 여기에서.
초기에 데이터 필터링하기 where
where데이터를 필터링하려면 where 절을 사용하여 summarize 또는 join와 같은 비용이 많이 드는 연산을 수행하기 전에(후에가 아니라) 필터링하세요.
예시:
다음을 피하세요 search 연산자
search 연산자설정은 search 연산자 는 느려질 수 있으므로 필요하지 않다면 피해야 합니다. 검색하려는 텍스트가 들어있을 가능성이 있는 열(또는 열들)을 알고 있다면, 모든 지정된 데이터베이스/테이블의 열을 search전체에서 검색하는 대신 where 저장할 수는 있지만 예약할 수 strings.contains().
예시:
대신:
| search 'alice'다음 사용:
| where strings.contains(name, 'alice')
PantherFlow에서 모든 로그를 가장 잘 검색하는 방법
PantherFlow의 모든 로그를 검색하려면, union 연산자:
검색하려는 값이 나타나야 하는 열을 알고 있다면(예: 지표 검색을 수행하는 경우 — 침해 지표[IoC]를 p_any 필드) 특정 열에서만 검색하도록 union panther_logs.public.* 검색을 최적화하기 위해 project 와 where 필터를 추가할 수 있습니다. 관련 열에서만 IoC를 검색하려면:
또한 Panther에서 지표 검색을 수행할 수도 있습니다:
(권장) The 검색 도구: 참조 자유 텍스트 필터 식
Search에는 모든 로그를 효율적으로 검색할 수 있도록 하는 내장 최적화가 있습니다.
설정은
executeIndicatorSearchQueryGraphQL API 엔드포인트: 예제를 참조하세요 여기활성화된 경우는 예외입니다.: 올바른 데이터 검색 및 분석 도구 가 자동으로 선택됩니다
다음으로 모든 로그를 쿼리하지 마세요 panther_views 데이터베이스 — 이는 사용 중단 예정입니다.
Last updated
Was this helpful?

