Cette traduction automatique est fournie pour votre commodité.
En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.
L'objet global $network vous permet de contrôler la configuration réseau utilisée par votre moniteur scripté Synthétique. Les éléments suivants s’appliquent à la fois aux navigateurs scriptés et aux tests API, sauf indication contraire.
Définit un serveur proxy à utiliser pour toutes requests par URL (HTTP, HTTPS et FTP).
Notes supplémentaires :
Le port est facultatif. S'il n'est pas fourni, il sera dérivé du schéma. Par exemple, pour HTTP, le port serait 80.
Le nom d'utilisateur et le mot de passe sont supposés être le résultat d'un appel à encodeURIComponent(). Les caractères spéciaux tels que @ et : dans le nom d'utilisateur et/ou le mot de passe doivent être échappés.
Cette méthode renvoie un Promise qui sera résolu une fois la configuration appliquée.
paramètres
Type de données
Description
proxyURL | proxyUrlParsed
Chaîne ou objet
L'URL pour se connecter au serveur proxy. Une chaîne contenant un proxyURL (par exemple, http://proxy_host:8888) ou un objet simple au même format que celui défini par la méthode url.parse(urlString) de Node.
Un exemple de configuration d'un serveur proxy avec le protocole HTTP sur le port 1234 sans authentification :
$network.setProxy('http://host.com:1234')
Un exemple de configuration d'un serveur proxy avec le protocole HTTP avec des informations d'authentification.
Cet appel est exactement le même que l'appel par URL setProxy, sauf qu'il s'applique au trafic HTTP.
Définit un serveur proxy à utiliser pour toutes requests HTTP.
Notes supplémentaires :
Le port est facultatif. S'il n'est pas fourni, il sera dérivé du schéma. Par exemple, pour HTTP, le port serait 80.
Le nom d'utilisateur et le mot de passe sont supposés être le résultat d'un appel à encodeURIComponent(). Les caractères spéciaux tels que @ et : dans le nom d'utilisateur et/ou le mot de passe doivent être échappés.
Cette méthode renvoie un Promise qui sera résolu une fois la configuration appliquée.
paramètres
Type de données
Description
proxyURL | proxyUrlParsed
Chaîne ou objet
L'URL pour se connecter au serveur proxy. Une chaîne contenant un proxyURL (par exemple, http://proxy_host:8888) ou un objet simple au même format que celui défini par la méthode url.parse(urlString) de Node.
Un exemple de configuration d'un serveur proxy avec le protocole HTTP sur le port 1234 sans authentification :
$network.setProxyForHttp('http://host.com:1234')
Un exemple de configuration d'un serveur proxy avec le protocole HTTP avec des informations d'authentification.
Cet appel est exactement le même que l'appel par URL setProxy, sauf qu'il s'applique au trafic HTTPS.
Définit un serveur proxy à utiliser pour toutes requests HTTPS.
Notes supplémentaires :
Le port est facultatif. S'il n'est pas fourni, il sera dérivé du schéma. Par exemple, pour HTTP, le port par défaut serait 443.
Le nom d'utilisateur et le mot de passe sont supposés être le résultat d'un appel à encodeURIComponent(). Les caractères spéciaux tels que @ et : dans le nom d'utilisateur et/ou le mot de passe doivent être échappés.
Cette méthode renvoie un Promise qui sera résolu une fois la configuration appliquée.
paramètres
Type de données
Description
proxyURL | proxyUrlParsed
Chaîne ou objet
L'URL pour se connecter au serveur proxy. Une chaîne contenant un proxyURL (par exemple, http://proxy_host:8888) ou un objet simple au même format que celui défini par la méthode url.parse(urlString) de Node.
Un exemple de configuration d'un serveur proxy avec le protocole HTTPS sur le port 1234 sans authentification :
Définit un serveur proxy via un script de configuration automatique de proxy (PAC) et renvoie une promesse. Cette fonction est uniquement disponible pour moniteur de navigateur scripté.
Cette méthode renvoie un Promise qui sera résolu une fois la configuration appliquée.
paramètres
Type de données
Description
scriptURL
Chaîne
L'URL du script PAC.
authCredentialsMap
Objet
Carte des identifiants d'authentification à fournir au(x) serveur(s) proxy, codée par le nom d'hôte du serveur proxy. Les valeurs de cette carte doivent être définies au format {username: 'authUsername', password: 'authPassword'}
Un exemple de configuration d'un serveur proxy via un script de configuration automatique de proxy (PAC) :
Cette méthode est Chrome-specific: elle s'applique uniquement aux types moniteur de navigateur scripté. Il peut être utilisé pour permettre une configuration de proxy plus flexible et plus complexe. Dans la plupart des cas, cette méthode ne sera pas nécessaire.
Définit la configuration du proxy à l'aide du format pris en charge par l'API d'extension Chrome pour le proxy. L'entrée est un objet ProxyRules, tel que défini par l'API d'extension Chrome pour configurer les proxys. Vous pouvez ajouter authCredentials pour les proxys qui en ont besoin. Voir Paramètres pour plus de détails.
Cette méthode renvoie un Promise qui sera résolu une fois la configuration appliquée.
paramètres
Type de données
Description
ProxyRules Object
Objet
proxyRulesObject est un objet simple qui suit le format ProxyRules tel que défini par l'API d'extension Chrome pour configurer les proxys. Cet objet est « aromatisé » pour s'adapter à notre environnement d'exécution : l'utilisateur peut définir une propriété supplémentaire, authCredentials, pour que Proxy server objects fournisse des informations d'identification d'authentification pour un serveur proxy spécifique. authCredentials est un objet au format {username: 'authUsername', password: 'authPassword'}.
Voici un exemple de création d'un proxyRules avec authCredentials:
var proxyRules ={
singleProxy:{
host:"example.com",
authCredentials:{
username:"authUsername",
password:"authPassword",
},
},
};
Voici un exemple de configuration d'un réseau proxy avec des ressources de zone réseau mixtes :
Cette méthode renvoie un Promise qui sera résolu une fois la configuration appliquée.
Cette méthode renvoie la configuration proxy actuelle. Il doit être synchronisé dans un rappel de promesse.
Un exemple de synchronisation getProxy avec $network.setProxy(); et $network.clearProxy();:
var assert =require("assert");
$network
.setProxy("http://user:password@myproxyurl.com")
.then(function(){
console.log("Proxy configuration applied");
// Note: $network.getProxy() is not synchronized with the webdriver Control Flow.
// To make sure we get the proxy configuration after the call to setProxy() above
// succeeds we need to use a promise callback
var proxyData = $network.getProxy();
console.log(proxyData);
})
.then(function(){
// Again: getProxy() is not synchronized with the Webdriver Control Flow: we
// need this promise callback otherwise clearProxy() might be called before the call
// to getProxy() above returns
return $network.clearProxy();
})
.then(function(){
console.log("Proxy configuration cleared");
// We need this promise callback for reasons explained above
var proxyData = $network.getProxy();
assert.equal(proxyData.rules,null);
});
Propriétés du proxy
Important
Ces informations proxy s'appliquent uniquement à ces versions :
Moniteur d'API : 0.4.0, 0.2.2, 0.2.1, 0.1.0
Monitorage scripté : 0.1.0
Afin d'analyser et de collecter vos métriques de trafic HTTP, New Relic doit s'assurer que le trafic passe par un entonnoir conceptuel. Notre monitoring Synthétique comprend un composant logiciel entonnoirs capable d'analyser les requests ou réponses HTTP puis d'enregistrer les informations.
Le moniteur de navigateur scripté de New Relic (versions 0.4.x et inférieures) inclut un mécanisme pour effectuer cette analyse sans avoir besoin d'un proxy HTTP, vous n'avez donc rien à configurer.
Le test API de New Relic (versions 0.4.x et inférieures) fournit un objet $http préconfiguré pour faire passer les requests via le proxy HTTP interne. Cela vous permet d'écrire votre test sans inclure aucun paramètre proxy.
Si vous souhaitez utiliser une autre méthode pour générer du trafic HTTP tout en collectant les métriques de trafic HTTP, vous pouvez utiliser $env.PROXY_HOST et $env.PROXY_PORT. Pour enregistrer les métriques de trafic, assurez-vous d'inclure ces propriétés dans votre script.