Summarize
Groups programs with similar purposes for finer control in route, like rule_set. This reduces the complexity in the rule.
Define in route
The following example on Windows:
{
"route": {
"process_group": [
{
"tag": "browser",
"process_name": [
"chrome.exe",
"firefox.exe",
"msedge.exe",
"..."
]
},
{
"tag": "devtools",
"process_name": [
"go.exe",
"node.exe",
"pip.exe",
"..."
],
"process_path": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Installer\\setup.exe"
]
},
{
"tag": "downloader",
"process_name": [
"IDMan.exe",
"xdm-app.exe",
"..."
]
}
]
}
}
Usage in route
Using like:
{
"route": {
"rules": [
{
"process_group": ["browser"],
"rule_set": ["dev_sites"],
"outbound": "settled_proxy"
},
{
"process_group": ["browser", "downloader", "devtools"],
"rule_set": ["video_sites", "cdn_sites"],
"outbound": "fast_proxy"
}
]
}
}
Use process_group instead of lots of process_name and process_path.
Especially effective when matching different rule_sets for the same process group.
{
"route": {
"rules": [
{
"process_group": "browser",
"rule_set": "americas",
"outbound": "proxy_americas"
},
{
"process_group": "browser",
"rule_set": "asia",
"outbound": "proxy_asia"
},
{
"process_group": "browser",
"rule_set": "europe",
"outbound": "proxy_europe"
}
]
}
}
process_group and process_name process_path should be or's when routing
Summarize
Groups programs with similar purposes for finer control in route, like
rule_set. This reduces the complexity in the rule.Define in
routeThe following example on Windows:
{ "route": { "process_group": [ { "tag": "browser", "process_name": [ "chrome.exe", "firefox.exe", "msedge.exe", "..." ] }, { "tag": "devtools", "process_name": [ "go.exe", "node.exe", "pip.exe", "..." ], "process_path": [ "C:\\Program Files (x86)\\Microsoft Visual Studio\\Installer\\setup.exe" ] }, { "tag": "downloader", "process_name": [ "IDMan.exe", "xdm-app.exe", "..." ] } ] } }Usage in
routeUsing like:
{ "route": { "rules": [ { "process_group": ["browser"], "rule_set": ["dev_sites"], "outbound": "settled_proxy" }, { "process_group": ["browser", "downloader", "devtools"], "rule_set": ["video_sites", "cdn_sites"], "outbound": "fast_proxy" } ] } }Use
process_groupinstead of lots ofprocess_nameandprocess_path.Especially effective when matching different rule_sets for the same process group.
{ "route": { "rules": [ { "process_group": "browser", "rule_set": "americas", "outbound": "proxy_americas" }, { "process_group": "browser", "rule_set": "asia", "outbound": "proxy_asia" }, { "process_group": "browser", "rule_set": "europe", "outbound": "proxy_europe" } ] } }process_groupandprocess_nameprocess_pathshould be or's when routing