email and recommendations - python

This commit is contained in:
Megan O'Keefe 2020-02-15 18:15:16 -05:00
parent cfa32d0c10
commit 95ae2ffb5b
13 changed files with 130 additions and 97 deletions

View file

@ -34,10 +34,10 @@ spec:
env: env:
- name: PORT - name: PORT
value: "9555" value: "9555"
- name: OC_STATS - name: SD_STATS
value: "True" value: "False"
- name: OC_TRACE - name: SD_TRACE
value: "True" value: "False"
#- name: JAEGER_SERVICE_ADDR #- name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268" # value: "jaeger-collector:14268"
resources: resources:

View file

@ -51,11 +51,11 @@ spec:
value: "currencyservice:7000" value: "currencyservice:7000"
- name: CART_SERVICE_ADDR - name: CART_SERVICE_ADDR
value: "cartservice:7070" value: "cartservice:7070"
- name: OC_STATS - name: SD_STATS
value: "False" value: "False"
- name: OC_TRACE - name: SD_TRACE
value: "False" value: "False"
- name: OC_PROFILING - name: SD_PROFILER
value: "False" value: "False"
# - name: JAEGER_SERVICE_ADDR # - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268" # value: "jaeger-collector:14268"

View file

@ -65,11 +65,11 @@ spec:
value: "checkoutservice:5050" value: "checkoutservice:5050"
- name: AD_SERVICE_ADDR - name: AD_SERVICE_ADDR
value: "adservice:9555" value: "adservice:9555"
- name: OC_STATS - name: SD_STATS
value: "False" value: "False"
- name: OC_TRACE - name: SD_TRACE
value: "False" value: "False"
- name: OC_PROFILING - name: SD_PROFILER
value: "False" value: "False"
# - name: JAEGER_SERVICE_ADDR # - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268" # value: "jaeger-collector:14268"

View file

@ -34,11 +34,11 @@ spec:
env: env:
- name: PORT - name: PORT
value: "3550" value: "3550"
- name: OC_STATS - name: SD_STATS
value: "False" value: "False"
- name: OC_TRACE - name: SD_TRACE
value: "False" value: "False"
- name: OC_PROFILING - name: SD_PROFILER
value: "False" value: "False"
readinessProbe: readinessProbe:
exec: exec:

View file

@ -44,8 +44,14 @@ spec:
value: "8080" value: "8080"
- name: PRODUCT_CATALOG_SERVICE_ADDR - name: PRODUCT_CATALOG_SERVICE_ADDR
value: "productcatalogservice:3550" value: "productcatalogservice:3550"
- name: ENABLE_PROFILER - name: SD_PROFILER
value: "0" value: "False"
- name: SD_STATS
value: "False"
- name: SD_TRACE
value: "False"
- name: SD_DEBUGGER
value: "False"
resources: resources:
requests: requests:
cpu: 100m cpu: 100m

View file

@ -33,11 +33,11 @@ spec:
env: env:
- name: PORT - name: PORT
value: "50051" value: "50051"
- name: OC_STATS - name: SD_STATS
value: "False" value: "False"
- name: OC_TRACE - name: SD_TRACE
value: "False" value: "False"
- name: OC_PROFILING - name: SD_PROFILER
value: "False" value: "False"
readinessProbe: readinessProbe:
periodSeconds: 5 periodSeconds: 5

View file

@ -214,8 +214,8 @@ public final class AdService {
} }
private static void initStats() { private static void initStats() {
boolean ocStats = Boolean.parseBoolean(System.getenv("OC_STATS")); boolean sdStats = Boolean.parseBoolean(System.getenv("SD_STATS"));
if (!ocStats) { if (!sdStats) {
logger.info("Stats disabled."); logger.info("Stats disabled.");
return; return;
} }
@ -252,8 +252,8 @@ public final class AdService {
} }
private static void initTracing() { private static void initTracing() {
boolean ocTrace = Boolean.parseBoolean(System.getenv("OC_TRACE")); boolean sdTrace = Boolean.parseBoolean(System.getenv("SD_TRACE"));
if (!ocTrace) { if (!sdTrace) {
logger.info("Tracing disabled."); logger.info("Tracing disabled.");
return; return;
} }

View file

@ -70,30 +70,30 @@ type checkoutService struct {
} }
func main() { func main() {
ocStats, err := getenvBool("OC_STATS") sdStats, err := getenvBool("SD_STATS")
if err != nil { if err != nil {
log.Errorf("Could not get OC_STATS var: %v, defaulting to True", err) log.Errorf("Could not get SD_STATS var: %v, defaulting to True", err)
ocStats = true sdStats = true
} }
ocTrace, err := getenvBool("OC_TRACE") sdTrace, err := getenvBool("SD_TRACE")
if err != nil { if err != nil {
log.Errorf("Could not get OC_TRACE var: %v, defaulting to True", err) log.Errorf("Could not get SD_TRACE var: %v, defaulting to True", err)
ocTrace = true sdTrace = true
} }
ocProfiling, err := getenvBool("OC_PROFILING") sdProfiler, err := getenvBool("SD_PROFILER")
if err != nil { if err != nil {
log.Errorf("Could not get OC_PROFILING var: %v, defaulting to True", err) log.Errorf("Could not get SD_PROFILER var: %v, defaulting to True", err)
ocProfiling = true sdProfiler = true
} }
if ocTrace == true { if sdTrace == true {
go initTracing() go initTracing()
} else { } else {
log.Info("Tracing disabled.") log.Info("Tracing disabled.")
} }
if ocProfiling == true { if sdProfiler == true {
go initProfiling("checkoutservice", "1.0.0") go initProfiling("checkoutservice", "1.0.0")
} else { } else {
log.Info("Profiling disabled.") log.Info("Profiling disabled.")
@ -120,7 +120,7 @@ func main() {
} }
var srv *grpc.Server var srv *grpc.Server
if ocStats == true { if sdStats == true {
log.Info("Stats enabled.") log.Info("Stats enabled.")
srv = grpc.NewServer(grpc.StatsHandler(&ocgrpc.ServerHandler{})) srv = grpc.NewServer(grpc.StatsHandler(&ocgrpc.ServerHandler{}))
} else { } else {

View file

@ -35,6 +35,15 @@ from opencensus.trace.samplers import always_on
# import googleclouddebugger # import googleclouddebugger
import googlecloudprofiler import googlecloudprofiler
from logger import getJSONLogger
logger = getJSONLogger('emailservice-server')
sdTrace = os.getenv('SD_TRACE', True)
sdStats = os.getenv('SD_STATS', True)
if sdTrace != False:
logger.info("Tracing enabled.")
try: try:
sampler = always_on.AlwaysOnSampler() sampler = always_on.AlwaysOnSampler()
exporter = stackdriver_exporter.StackdriverExporter( exporter = stackdriver_exporter.StackdriverExporter(
@ -43,6 +52,11 @@ try:
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor(sampler, exporter) tracer_interceptor = server_interceptor.OpenCensusServerInterceptor(sampler, exporter)
except: except:
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor() tracer_interceptor = server_interceptor.OpenCensusServerInterceptor()
else:
logger.info("Tracing disabled.")
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor()
# try: # try:
# googleclouddebugger.enable( # googleclouddebugger.enable(
@ -52,9 +66,6 @@ except:
# except: # except:
# pass # pass
from logger import getJSONLogger
logger = getJSONLogger('emailservice-server')
# Loads confirmation email template from file # Loads confirmation email template from file
env = Environment( env = Environment(
loader=FileSystemLoader('templates'), loader=FileSystemLoader('templates'),

View file

@ -95,24 +95,24 @@ func main() {
} }
log.Out = os.Stdout log.Out = os.Stdout
ocTrace, err := getenvBool("OC_TRACE") sdTrace, err := getenvBool("SD_TRACE")
if err != nil { if err != nil {
log.Errorf("Could not get OC_TRACE var: %v, defaulting to True", err) log.Errorf("Could not get SD_TRACE var: %v, defaulting to True", err)
ocTrace = true sdTrace = true
} }
ocProfiling, err := getenvBool("OC_PROFILING") sdProfiler, err := getenvBool("SD_PROFILER")
if err != nil { if err != nil {
log.Errorf("Could not get OC_PROFILING var: %v, defaulting to True", err) log.Errorf("Could not get SD_PROFILER var: %v, defaulting to True", err)
ocProfiling = true sdProfiler = true
} }
if ocTrace == true { if sdTrace == true {
go initTracing(log) go initTracing(log)
} else { } else {
log.Info("Tracing disabled.") log.Info("Tracing disabled.")
} }
if ocProfiling == true { if sdProfiler == true {
go initProfiling(log, "frontend", "1.0.0") go initProfiling(log, "frontend", "1.0.0")
} else { } else {
log.Info("Profiling disabled") log.Info("Profiling disabled")

View file

@ -54,7 +54,7 @@ var (
port = "3550" port = "3550"
reloadCatalog bool reloadCatalog bool
ocStats bool sdStats bool
) )
func init() { func init() {
@ -77,30 +77,30 @@ func init() {
func main() { func main() {
var err error var err error
ocStats, err = getenvBool("OC_STATS") sdStats, err = getenvBool("SD_STATS")
if err != nil { if err != nil {
log.Errorf("Could not get OC_STATS var: %v, defaulting to True", err) log.Errorf("Could not get SD_STATS var: %v, defaulting to True", err)
ocStats = true sdStats = true
} }
ocTrace, err := getenvBool("OC_TRACE") sdTrace, err := getenvBool("SD_TRACE")
if err != nil { if err != nil {
log.Errorf("Could not get OC_TRACE var: %v, defaulting to True", err) log.Errorf("Could not get SD_TRACE var: %v, defaulting to True", err)
ocTrace = true sdTrace = true
} }
ocProfiling, err := getenvBool("OC_PROFILING") sdProfiler, err := getenvBool("SD_PROFILER")
if err != nil { if err != nil {
log.Errorf("Could not get OC_PROFILING var: %v, defaulting to True", err) log.Errorf("Could not get SD_PROFILER var: %v, defaulting to True", err)
ocProfiling = true sdProfiler = true
} }
if ocTrace == true { if sdTrace == true {
go initTracing() go initTracing()
} else { } else {
log.Info("Tracing disabled.") log.Info("Tracing disabled.")
} }
if ocProfiling == true { if sdProfiler == true {
go initProfiling("productcatalogservice", "1.0.0") go initProfiling("productcatalogservice", "1.0.0")
} else { } else {
log.Info("Profiling disabled.") log.Info("Profiling disabled.")
@ -150,7 +150,7 @@ func run(port string) string {
log.Fatal(err) log.Fatal(err)
} }
var srv *grpc.Server var srv *grpc.Server
if ocStats == true { if sdStats == true {
log.Info("Stats enabled.") log.Info("Stats enabled.")
srv = grpc.NewServer(grpc.StatsHandler(&ocgrpc.ServerHandler{})) srv = grpc.NewServer(grpc.StatsHandler(&ocgrpc.ServerHandler{}))
} else { } else {

View file

@ -88,15 +88,24 @@ class RecommendationService(demo_pb2_grpc.RecommendationServiceServicer):
if __name__ == "__main__": if __name__ == "__main__":
logger.info("initializing recommendationservice") logger.info("initializing recommendationservice")
# Profiler
try: try:
enable_profiler = os.environ["ENABLE_PROFILER"] sdProfiler = os.getenv('SD_PROFILER', True)
if enable_profiler != "1": if sdProfiler != "True":
raise KeyError() raise KeyError()
else: else:
logger.inf("Profiler enabled.")
initStackdriverProfiling() initStackdriverProfiling()
except KeyError: except KeyError:
logger.info("Skipping Stackdriver Profiler Python agent initialization. Set environment variable ENABLE_PROFILER=1 to enable.") logger.info("Profiler disabled.")
# Trace
sdTrace = os.getenv('SD_TRACE', True)
if sdTrace != True:
logger.info("Tracing disabled.")
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor()
else:
logger.info("Tracing enabled.")
try: try:
sampler = always_on.AlwaysOnSampler() sampler = always_on.AlwaysOnSampler()
exporter = stackdriver_exporter.StackdriverExporter( exporter = stackdriver_exporter.StackdriverExporter(
@ -106,6 +115,13 @@ if __name__ == "__main__":
except: except:
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor() tracer_interceptor = server_interceptor.OpenCensusServerInterceptor()
# Debugger
sdDebugger = os.getenv('SD_DEBUGGER', True)
if sdDebugger != True:
logger.info("Debugger disabled.")
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor()
else:
logger.info("Debugger enabled.")
try: try:
googleclouddebugger.enable( googleclouddebugger.enable(
module='recommendationserver', module='recommendationserver',

View file

@ -59,30 +59,30 @@ func init() {
} }
func main() { func main() {
ocStats, err := getenvBool("OC_STATS") sdStats, err := getenvBool("SD_STATS")
if err != nil { if err != nil {
log.Errorf("Could not get OC_STATS var: %v, defaulting to True", err) log.Errorf("Could not get SD_STATS var: %v, defaulting to True", err)
ocStats = true sdStats = true
} }
ocTrace, err := getenvBool("OC_TRACE") sdTrace, err := getenvBool("SD_TRACE")
if err != nil { if err != nil {
log.Errorf("Could not get OC_TRACE var: %v, defaulting to True", err) log.Errorf("Could not get SD_TRACE var: %v, defaulting to True", err)
ocTrace = true sdTrace = true
} }
ocProfiling, err := getenvBool("OC_PROFILING") sdProfiler, err := getenvBool("SD_PROFILER")
if err != nil { if err != nil {
log.Errorf("Could not get OC_PROFILING var: %v, defaulting to True", err) log.Errorf("Could not get SD_PROFILER var: %v, defaulting to True", err)
ocProfiling = true sdProfiler = true
} }
if ocTrace == true { if sdTrace == true {
go initTracing() go initTracing()
} else { } else {
log.Info("Tracing disabled.") log.Info("Tracing disabled.")
} }
if ocProfiling == true { if sdProfiler == true {
go initProfiling("shippingservice", "1.0.0") go initProfiling("shippingservice", "1.0.0")
} else { } else {
log.Info("Profiling disabled.") log.Info("Profiling disabled.")
@ -100,7 +100,7 @@ func main() {
} }
var srv *grpc.Server var srv *grpc.Server
if ocStats == true { if sdStats == true {
log.Info("Stats enabled.") log.Info("Stats enabled.")
srv = grpc.NewServer(grpc.StatsHandler(&ocgrpc.ServerHandler{})) srv = grpc.NewServer(grpc.StatsHandler(&ocgrpc.ServerHandler{}))
} else { } else {