

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Conta i referrer, gli indirizzi IP o le regole corrispondenti
<a name="query-examples-waf-logs-count"></a>

Gli esempi di questa sezione richiedono il conteggio degli elementi di registro di interesse.
+ [Count the number of referrers that contain a specified term](#waf-example-count-referrers-with-specified-term)
+ [Count all matched IP addresses in the last 10 days that have matched excluded rules](#waf-example-count-matched-ip-addresses)
+ [Group all counted managed rules by the number of times matched](#waf-example-group-managed-rules-by-times-matched)
+ [Group all counted custom rules by number of times matched](#waf-example-group-custom-rules-by-times-matched)

**Example : Conta il numero di riferimenti contenenti un termine specificato**  
La query seguente conta il numero di riferimenti che contengono il termine "amazon" per l'intervallo di date specificato.  

```
WITH test_dataset AS 
  (SELECT header FROM waf_logs
    CROSS JOIN UNNEST(httprequest.headers) AS t(header) WHERE "date" >= '2021/03/01'
    AND "date" < '2021/03/31')
SELECT COUNT(*) referer_count 
FROM test_dataset 
WHERE LOWER(header.name)='referer' AND header.value LIKE '%amazon%'
```

**Example : Conta tutti gli indirizzi IP corrispondenti negli ultimi 10 giorni che hanno soddisfatto le regole escluse**  
La query seguente conteggia il numero di volte in cui l'indirizzo IP corrisponde alla regola esclusa nel gruppo di regole.   

```
WITH test_dataset AS 
  (SELECT * FROM waf_logs 
    CROSS JOIN UNNEST(rulegrouplist) AS t(allrulegroups))
SELECT 
  COUNT(*) AS count, 
  "httprequest"."clientip", 
  "allrulegroups"."excludedrules",
  "allrulegroups"."ruleGroupId"
FROM test_dataset 
WHERE allrulegroups.excludedrules IS NOT NULL AND from_unixtime(timestamp/1000) > now() - interval '10' day
GROUP BY "httprequest"."clientip", "allrulegroups"."ruleGroupId", "allrulegroups"."excludedrules"
ORDER BY count DESC
```

**Example : Raggruppa tutte le regole gestite conteggiate in base al numero di corrispondenze**  
Se hai impostato le azioni delle regole del gruppo di regole su Count nella configurazione Web ACL prima del 27 ottobre 2022, AWS WAF hai salvato le sostituzioni nell'ACL Web JSON come. `excludedRules` Ora, l'impostazione JSON per sovrascrivere una regola su Count è nelle impostazioni `ruleActionOverrides`. Per ulteriori informazioni, consulta [Sostituzione delle azioni nei gruppi di regole](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-rule-group-override-options.html) nella *Guida per gli sviluppatori di AWS WAF *. Per estrarre le regole gestite in modalità Count dalla nuova struttura di log, esegui una query su `nonTerminatingMatchingRules` nella sezione `ruleGroupList` anziché nel campo `excludedRules`, come nell'esempio seguente.  

```
SELECT
 count(*) AS count,
 httpsourceid,
 httprequest.clientip,
 t.rulegroupid, 
 t.nonTerminatingMatchingRules
FROM "waf_logs" 
CROSS JOIN UNNEST(rulegrouplist) AS t(t) 
WHERE action <> 'BLOCK' AND cardinality(t.nonTerminatingMatchingRules) > 0 
GROUP BY t.nonTerminatingMatchingRules, action, httpsourceid, httprequest.clientip, t.rulegroupid 
ORDER BY "count" DESC 
Limit 50
```

**Example : Raggruppa tutte le regole personalizzate contate in base al numero di corrispondenze**  
La seguente query raggruppa tutte le regole personalizzate contate in base al numero di volte in cui sono state confrontate.  

```
SELECT
  count(*) AS count,
         httpsourceid,
         httprequest.clientip,
         t.ruleid,
         t.action
FROM "waf_logs" 
CROSS JOIN UNNEST(nonterminatingmatchingrules) AS t(t) 
WHERE action <> 'BLOCK' AND cardinality(nonTerminatingMatchingRules) > 0 
GROUP BY t.ruleid, t.action, httpsourceid, httprequest.clientip 
ORDER BY "count" DESC
Limit 50
```

Per informazioni sui percorsi dei log per le regole personalizzate e i gruppi di regole gestiti, consulta [Controllo e regolazione](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-testing-activities.html) nella *Guida per gli sviluppatori di AWS WAF *.