Class WafLog.Builder

  • Enclosing class:
    WafLog

    public static class WafLog.Builder
    extends Object
    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • action

        public WafLog.Builder action​(String action)
        The action taken on the request, either ALLOW, DETECT, or BLOCK.
        Parameters:
        action - the value to set
        Returns:
        this builder
      • captchaAction

        public WafLog.Builder captchaAction​(String captchaAction)
        The CAPTCHA action taken on the request, ALLOW or BLOCK.

        For more information about CAPTCHAs, see UpdateCaptchas.

        Parameters:
        captchaAction - the value to set
        Returns:
        this builder
      • captchaExpected

        public WafLog.Builder captchaExpected​(String captchaExpected)
        The CAPTCHA challenge answer that was expected.
        Parameters:
        captchaExpected - the value to set
        Returns:
        this builder
      • captchaReceived

        public WafLog.Builder captchaReceived​(String captchaReceived)
        The CAPTCHA challenge answer that was received.
        Parameters:
        captchaReceived - the value to set
        Returns:
        this builder
      • captchaFailCount

        public WafLog.Builder captchaFailCount​(String captchaFailCount)
        The number of times the CAPTCHA challenge was failed.
        Parameters:
        captchaFailCount - the value to set
        Returns:
        this builder
      • clientAddress

        public WafLog.Builder clientAddress​(String clientAddress)
        The IPv4 address of the requesting client.
        Parameters:
        clientAddress - the value to set
        Returns:
        this builder
      • countryName

        public WafLog.Builder countryName​(String countryName)
        The name of the country where the request originated.
        Parameters:
        countryName - the value to set
        Returns:
        this builder
      • userAgent

        public WafLog.Builder userAgent​(String userAgent)
        The value of the request’s User-Agent header field.
        Parameters:
        userAgent - the value to set
        Returns:
        this builder
      • domain

        public WafLog.Builder domain​(String domain)
        The Host header data of the request.
        Parameters:
        domain - the value to set
        Returns:
        this builder
      • protectionRuleDetections

        public WafLog.Builder protectionRuleDetections​(Map<String,​String> protectionRuleDetections)
        A map of protection rule keys to detection message details.

        Detections are requests that matched the criteria of a protection rule but the rule’s action was set to DETECT.

        Parameters:
        protectionRuleDetections - the value to set
        Returns:
        this builder
      • httpMethod

        public WafLog.Builder httpMethod​(String httpMethod)
        The HTTP method of the request.
        Parameters:
        httpMethod - the value to set
        Returns:
        this builder
      • requestUrl

        public WafLog.Builder requestUrl​(String requestUrl)
        The path and query string of the request.
        Parameters:
        requestUrl - the value to set
        Returns:
        this builder
      • httpHeaders

        public WafLog.Builder httpHeaders​(Map<String,​String> httpHeaders)
        The map of the request’s header names to their respective values.
        Parameters:
        httpHeaders - the value to set
        Returns:
        this builder
      • referrer

        public WafLog.Builder referrer​(String referrer)
        The Referrer header value of the request.
        Parameters:
        referrer - the value to set
        Returns:
        this builder
      • responseCode

        public WafLog.Builder responseCode​(Integer responseCode)
        The status code of the response.
        Parameters:
        responseCode - the value to set
        Returns:
        this builder
      • responseSize

        public WafLog.Builder responseSize​(Integer responseSize)
        The size in bytes of the response.
        Parameters:
        responseSize - the value to set
        Returns:
        this builder
      • incidentKey

        public WafLog.Builder incidentKey​(String incidentKey)
        The incident key of a request.

        An incident key is generated for each request processed by the Web Application Firewall and is used to idenitfy blocked requests in applicable logs.

        Parameters:
        incidentKey - the value to set
        Returns:
        this builder
      • fingerprint

        public WafLog.Builder fingerprint​(String fingerprint)
        The hashed signature of the device’s fingerprint.

        For more information, see DeviceFingerPrintChallenge.

        Parameters:
        fingerprint - the value to set
        Returns:
        this builder
      • device

        public WafLog.Builder device​(String device)
        The type of device that the request was made from.
        Parameters:
        device - the value to set
        Returns:
        this builder
      • countryCode

        public WafLog.Builder countryCode​(String countryCode)
        ISO 3166-1 alpha-2 code of the country from which the request originated.

        For a list of codes, see ISO’s website.

        Parameters:
        countryCode - the value to set
        Returns:
        this builder
      • requestHeaders

        public WafLog.Builder requestHeaders​(Map<String,​String> requestHeaders)
        A map of header names to values of the request sent to the origin, including any headers appended by the Web Application Firewall.
        Parameters:
        requestHeaders - the value to set
        Returns:
        this builder
      • threatFeedKey

        public WafLog.Builder threatFeedKey​(String threatFeedKey)
        The ThreatFeed key that matched the request.

        For more information about threat feeds, see UpdateThreatFeeds.

        Parameters:
        threatFeedKey - the value to set
        Returns:
        this builder
      • accessRuleKey

        public WafLog.Builder accessRuleKey​(String accessRuleKey)
        The AccessRule key that matched the request.

        For more information about access rules, see UpdateAccessRules.

        Parameters:
        accessRuleKey - the value to set
        Returns:
        this builder
      • addressRateLimitingKey

        public WafLog.Builder addressRateLimitingKey​(String addressRateLimitingKey)
        The AddressRateLimiting key that matched the request.

        For more information about address rate limiting, see UpdateWafAddressRateLimiting.

        Parameters:
        addressRateLimitingKey - the value to set
        Returns:
        this builder
      • timestamp

        public WafLog.Builder timestamp​(Date timestamp)
        The date and time the Web Application Firewall processed the request and logged it.
        Parameters:
        timestamp - the value to set
        Returns:
        this builder
      • logType

        public WafLog.Builder logType​(String logType)
        The type of log of the request.

        For more about log types, see Logs.

        Parameters:
        logType - the value to set
        Returns:
        this builder
      • originAddress

        public WafLog.Builder originAddress​(String originAddress)
        The address of the origin server where the request was sent.
        Parameters:
        originAddress - the value to set
        Returns:
        this builder
      • originResponseTime

        public WafLog.Builder originResponseTime​(String originResponseTime)
        The amount of time it took the origin server to respond to the request, in seconds.
        Parameters:
        originResponseTime - the value to set
        Returns:
        this builder
      • build

        public WafLog build()