mirror of
https://github.com/httprunner/httprunner.git
synced 2026-09-05 23:51:25 +08:00
change: do not send GA events in CI environment
This commit is contained in:
@@ -10,7 +10,7 @@ func TestSendEvents(t *testing.T) {
|
|||||||
Action: "SendEvents",
|
Action: "SendEvents",
|
||||||
Value: 123,
|
Value: 123,
|
||||||
}
|
}
|
||||||
err := gaClient.SendEvent(event)
|
err := SendEvent(event)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package sdk
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"os"
|
||||||
|
|
||||||
"github.com/denisbrodbeck/machineid"
|
"github.com/denisbrodbeck/machineid"
|
||||||
"github.com/getsentry/sentry-go"
|
"github.com/getsentry/sentry-go"
|
||||||
@@ -46,5 +47,9 @@ func init() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func SendEvent(e IEvent) error {
|
func SendEvent(e IEvent) error {
|
||||||
|
if os.Getenv("CI") == "true" {
|
||||||
|
// do not send GA events in CI environment
|
||||||
|
return nil
|
||||||
|
}
|
||||||
return gaClient.SendEvent(e)
|
return gaClient.SendEvent(e)
|
||||||
}
|
}
|
||||||
|
|||||||
+11
-2
@@ -2,6 +2,7 @@ import collections
|
|||||||
import copy
|
import copy
|
||||||
import itertools
|
import itertools
|
||||||
import json
|
import json
|
||||||
|
import os
|
||||||
import os.path
|
import os.path
|
||||||
import platform
|
import platform
|
||||||
import uuid
|
import uuid
|
||||||
@@ -40,8 +41,13 @@ class GAClient(object):
|
|||||||
'cid': uuid.getnode(), # Anonymous Client ID
|
'cid': uuid.getnode(), # Anonymous Client ID
|
||||||
'ua': f'HttpRunner/{__version__}',
|
'ua': f'HttpRunner/{__version__}',
|
||||||
}
|
}
|
||||||
|
# do not send GA events in CI environment
|
||||||
|
self.__is_ci = os.getenv("CI") == "true"
|
||||||
|
|
||||||
def track_event(self, category: Text, action: Text, value: int = 0):
|
def track_event(self, category: Text, action: Text, value: int = 0):
|
||||||
|
if self.__is_ci:
|
||||||
|
return
|
||||||
|
|
||||||
data = {
|
data = {
|
||||||
't': 'event', # Event hit type = event
|
't': 'event', # Event hit type = event
|
||||||
'ec': category, # Required. Event Category.
|
'ec': category, # Required. Event Category.
|
||||||
@@ -51,11 +57,14 @@ class GAClient(object):
|
|||||||
}
|
}
|
||||||
data.update(self.common_params)
|
data.update(self.common_params)
|
||||||
try:
|
try:
|
||||||
self.http_client.post(self.report_url, data=data)
|
self.http_client.post(self.report_url, data=data, timeout=5)
|
||||||
except Exception: # ProxyError, SSLError, ConnectionError
|
except Exception: # ProxyError, SSLError, ConnectionError
|
||||||
pass
|
pass
|
||||||
|
|
||||||
def track_user_timing(self, category: Text, variable: Text, duration: int):
|
def track_user_timing(self, category: Text, variable: Text, duration: int):
|
||||||
|
if self.__is_ci:
|
||||||
|
return
|
||||||
|
|
||||||
data = {
|
data = {
|
||||||
't': 'timing', # Event hit type = timing
|
't': 'timing', # Event hit type = timing
|
||||||
'utc': category, # Required. user timing category. e.g. jsonLoader
|
'utc': category, # Required. user timing category. e.g. jsonLoader
|
||||||
@@ -65,7 +74,7 @@ class GAClient(object):
|
|||||||
}
|
}
|
||||||
data.update(self.common_params)
|
data.update(self.common_params)
|
||||||
try:
|
try:
|
||||||
self.http_client.post(self.report_url, data=data)
|
self.http_client.post(self.report_url, data=data, timeout=5)
|
||||||
except Exception: # ProxyError, SSLError, ConnectionError
|
except Exception: # ProxyError, SSLError, ConnectionError
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user