{
    "id": "WatchguardFirebox",
    "title": "[Deprecated] WatchGuard Firebox",
    "publisher": "WatchGuard Technologies",
    "descriptionMarkdown": "WatchGuard Firebox (https://www.watchguard.com/wgrd-products/firewall-appliances and https://www.watchguard.com/wgrd-products/cloud-and-virtual-firewalls) is security products/firewall-appliances. Watchguard Firebox will send syslog to Watchguard Firebox collector agent.The agent then sends the message to the workspace.",
    "additionalRequirementBanner": "These queries are dependent on a parser based on a Kusto Function deployed as part of the solution.",
    "graphQueries": [
        {
            "metricName": "Total data received",
            "legend": "WatchGuardFirebox",
            "baseQuery": "WatchGuardFirebox"
        }
    ],
    "sampleQueries": [
        {
            "description" : "Top 10 Fireboxes in last 24 hours",
            "query": "WatchGuardFirebox\n | where TimeGenerated >= ago(24h)\n| summarize count() by HostName\n| top 10 by count_ desc"
        },
        {
            "description" : "Firebox Named WatchGuard-XTM top 10 messages in last 24 hours",
            "query": "WatchGuardFirebox\n | where HostName contains 'WatchGuard-XTM'\n| where TimeGenerated >= ago(24h)\n| summarize count() by MessageId\n| top 10 by count_ desc"
        },		
		{
            "description" : "Firebox Named WatchGuard-XTM top 10 applications in last 24 hours",
            "query": "WatchGuardFirebox\n | where HostName contains 'WatchGuard-XTM'\n| where TimeGenerated >= ago(24h)\n| summarize count() by Application\n| top 10 by count_ desc"
        }	
    ],
    "dataTypes": [
        {
            "name": "Syslog (WatchGuardFirebox)",
            "lastDataReceivedQuery": "WatchGuardFirebox\n            | summarize Time = max(TimeGenerated)\n            | where isnotempty(Time)"
        }
    ],
    "connectivityCriterias": [
        {
            "type": "IsConnectedQuery",
            "value": [
                "WatchGuardFirebox\n  |where TimeGenerated > ago(3d)\n    |take 1\n   | project IsConnected = true"
            ]
        }
    ],
    "availability": {
        "status": 1,
		"isPreview": false
    },
    "permissions": {
        "resourceProvider": [
            {
                "provider": "Microsoft.OperationalInsights/workspaces",
                "permissionsDisplayText": "write permission is required.",
                "providerDisplayName": "Workspace",
                "scope": "Workspace",
                "requiredPermissions": {
                    "write": true,
                    "delete": true
                }
            }
        ]
    },
    "instructionSteps": [
        {
            "title": "", 
            "description": "**NOTE:** This data connector depends on a parser based on a Kusto Function to work as expected which is deployed as part of the solution. To view the function code in Log Analytics, open Log Analytics/Microsoft Sentinel Logs blade, click Functions and search for the alias WatchGuardFirebox and load the function code or click [here](https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Watchguard%20Firebox/Parsers/WatchGuardFirebox.txt) on the second line of the query, enter the hostname(s) of your WatchGuard Firebox device(s) and any other unique identifiers for the logstream. The function usually takes 10-15 minutes to activate after solution installation/update.",
            "instructions": [ 
            ]    
        }, 
        {
            "title": "1. Install and onboard the agent for Linux",
            "description": "Typically, you should install the agent on a different computer from the one on which the logs are generated.\n\n>  Syslog logs are collected only from **Linux** agents.",
            "instructions": [
                {
                    "parameters": {
                        "title": "Choose where to install the agent:",
                        "instructionSteps": [
                            {
                                "title": "Install agent on Azure Linux Virtual Machine",
                                "description": "Select the machine to install the agent on and then click **Connect**.",
                                "instructions": [
                                    {
                                        "parameters": {
                                            "linkType": "InstallAgentOnLinuxVirtualMachine"
                                        },
                                        "type": "InstallAgent"
                                    }
                                ]
                            },
                            {
                                "title": "Install agent on a non-Azure Linux Machine",
                                "description": "Download the agent on the relevant machine and follow the instructions.",
                                "instructions": [
                                    {
                                        "parameters": {
                                            "linkType": "InstallAgentOnLinuxNonAzure"
                                        },
                                        "type": "InstallAgent"
                                    }
                                ]
                            }
                        ]
                    },
                    "type": "InstructionStepsGroup"
                }
            ]
        },
        {
            "title": "2. Configure the logs to be collected",
            "description": "Configure the facilities you want to collect and their severities.\n\n1.  Under workspace advanced settings **Configuration**, select **Data** and then **Syslog**.\n2.  Select **Apply below configuration to my machines** and select the facilities and severities.\n3.  Click **Save**.",
            "instructions": [
                {
                    "parameters": {
                        "linkType": "OpenSyslogSettings"
                    },
                    "type": "InstallAgent"
                }
            ]
        }
    ],
    "metadata": {
        "id": "47835227-715b-4000-892e-e1fff81023c0",
        "version": "1.0.0",
        "kind": "dataConnector",
        "source": {
            "kind": "community"
        },
        "author": {
            "name": "WatchGuard"
        },
        "support": {
            "name": "WatchGuard",
            "link": "https://www.watchguard.com/wgrd-support/overview",
            "tier": "developer"
        }
    }
}
