Cleanup and fixes

This commit is contained in:
Megan O'Keefe 2020-02-16 17:10:30 -05:00
parent a1165b0574
commit 156fa24a1e
18 changed files with 120 additions and 117 deletions

3
.gitignore vendored
View file

@ -8,4 +8,5 @@ pkg/
.vs/
.idea
.skaffold-*.yaml
.kubernetes-manifests-*/
.kubernetes-manifests-*/
.project

View file

@ -38,10 +38,6 @@ spec:
# value: "False"
# - name: TRACE
# value: "False"
# - name: PROFILER
# value: "False"
# - name: DEBUGGER
# value: "False"
#- name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
resources:

View file

@ -57,8 +57,6 @@ spec:
# value: "False"
# - name: PROFILER
# value: "False"
# - name: DEBUGGER
# value: "False"
# - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
resources:

View file

@ -35,8 +35,6 @@ spec:
env:
- name: PORT
value: "7000"
# - name: STATS
# value: "False"
# - name: TRACE
# value: "False"
# - name: PROFILER

View file

@ -34,14 +34,10 @@ spec:
env:
- name: PORT
value: "8080"
# - name: STATS
# value: "False"
# - name: TRACE
# value: "False"
# - name: PROFILER
# value: "False"
# - name: DEBUGGER
# value: "False"
# - name: TRACE
# value: "False"
# - name: PROFILER
# value: "False"
readinessProbe:
periodSeconds: 5
exec:

View file

@ -65,14 +65,10 @@ spec:
value: "checkoutservice:5050"
- name: AD_SERVICE_ADDR
value: "adservice:9555"
# - name: STATS
# value: "False"
# - name: TRACE
# value: "False"
# - name: PROFILER
# value: "False"
# - name: DEBUGGER
# value: "False"
# - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
resources:

View file

@ -34,16 +34,14 @@ spec:
env:
- name: PORT
value: "3550"
# - name: STATS
# value: "False"
# - name: TRACE
# value: "False"
# - name: PROFILER
# value: "False"
# - name: DEBUGGER
# value: "False"
# - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
# - name: STATS
# value: "False"
# - name: TRACE
# value: "False"
# - name: PROFILER
# value: "False"
# - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
readinessProbe:
exec:
command: ["/bin/grpc_health_probe", "-addr=:3550"]

View file

@ -44,16 +44,12 @@ spec:
value: "8080"
- name: PRODUCT_CATALOG_SERVICE_ADDR
value: "productcatalogservice:3550"
# - name: STATS
# value: "False"
# - name: TRACE
# value: "False"
# - name: PROFILER
# value: "False"
# - name: DEBUGGER
# value: "False"
# - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
# - name: TRACE
# value: "False"
# - name: PROFILER
# value: "False"
# - name: DEBUGGER
# value: "False"
resources:
requests:
cpu: 100m

View file

@ -33,16 +33,14 @@ spec:
env:
- name: PORT
value: "50051"
# - name: STATS
# value: "False"
# - name: TRACE
# value: "False"
# - name: PROFILER
# value: "False"
# - name: DEBUGGER
# value: "False"
# - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
# - name: STATS
# value: "False"
# - name: TRACE
# value: "False"
# - name: PROFILER
# value: "False"
# - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
readinessProbe:
periodSeconds: 5
exec:

View file

@ -0,0 +1,2 @@
connection.project.dir=
eclipse.preferences.version=1

View file

@ -214,7 +214,11 @@ public final class AdService {
}
private static void initStats() {
boolean stats = Boolean.parseBoolean(System.getenv("STATS"));
String statsEnv = System.getenv("STATS");
if (statsEnv == null) {
statsEnv = "true";
}
boolean stats = Boolean.parseBoolean(statsEnv);
if (!stats) {
logger.info("Stats disabled.");
return;
@ -252,7 +256,11 @@ public final class AdService {
}
private static void initTracing() {
boolean trace = Boolean.parseBoolean(System.getenv("TRACE"));
String traceEnv = System.getenv("TRACE");
if (traceEnv == null) {
traceEnv = "true";
}
boolean trace = Boolean.parseBoolean(traceEnv);
if (!trace) {
logger.info("Tracing disabled.");
return;

View file

@ -72,28 +72,29 @@ type checkoutService struct {
func main() {
stats, err := getenvBool("STATS")
if err != nil {
log.Errorf("Could not get STATS var: %v, defaulting to True", err)
log.Debugf("Could not get STATS var: %v, defaulting to True", err)
stats = true
}
trace, err := getenvBool("TRACE")
if err != nil {
log.Errorf("Could not get TRACE var: %v, defaulting to True", err)
log.Debugf("Could not get TRACE var: %v, defaulting to True", err)
trace = true
}
profiler, err := getenvBool("PROFILER")
if err != nil {
log.Errorf("Could not get PROFILER var: %v, defaulting to True", err)
profiler = true
}
if trace == true {
log.Info("Tracing enabled.")
go initTracing()
} else {
log.Info("Tracing disabled.")
}
profiler, err := getenvBool("PROFILER")
if err != nil {
log.Debugf("Could not get PROFILER var: %v, defaulting to True", err)
profiler = true
}
if profiler == true {
log.Info("Profiling enabled.")
go initProfiling("checkoutservice", "1.0.0")
} else {
log.Info("Profiling disabled.")
@ -256,7 +257,7 @@ func (cs *checkoutService) PlaceOrder(ctx context.Context, req *pb.PlaceOrderReq
if err != nil {
return nil, status.Errorf(codes.Internal, "failed to charge card: %+v", err)
}
log.Infof("payment went through (transaction_id: %s)", txID)
log.Debugf("payment went through (transaction_id: %s)", txID)
shippingTrackingID, err := cs.shipOrder(ctx, req.Address, prep.cartItems)
if err != nil {
@ -276,7 +277,7 @@ func (cs *checkoutService) PlaceOrder(ctx context.Context, req *pb.PlaceOrderReq
if err := cs.sendOrderConfirmation(ctx, req.Email, orderResult); err != nil {
log.Warnf("failed to send order confirmation to %q: %+v", req.Email, err)
} else {
log.Infof("order confirmation email sent to %q", req.Email)
// log.Infof("order confirmation email sent to %q", req.Email)
}
resp := &pb.PlaceOrderResponse{Order: orderResult}
return resp, nil

View file

@ -31,10 +31,10 @@ if (profiler == "true") {
var trace = process.env.TRACE || "true";
trace = trace.toLowerCase();
if (trace == "true") {
console.log("Trace enabled.")
console.log("Tracing enabled.")
require('@google-cloud/trace-agent').start();
} else {
console.log("Trace disabled.")
console.log("Tracing disabled.")
}
var debug = process.env.DEBUGGER || "true";

View file

@ -29,7 +29,9 @@ from grpc_health.v1 import health_pb2
from grpc_health.v1 import health_pb2_grpc
from opencensus.trace.exporters import stackdriver_exporter
from opencensus.trace.exporters import print_exporter
from opencensus.trace.ext.grpc import server_interceptor
from opencensus.common.transports.async_ import AsyncTransport
from opencensus.trace.samplers import always_on
# import googleclouddebugger
@ -38,25 +40,6 @@ import googlecloudprofiler
from logger import getJSONLogger
logger = getJSONLogger('emailservice-server')
trace = os.getenv('TRACE', True)
if trace != False:
logger.info("Tracing enabled.")
try:
sampler = always_on.AlwaysOnSampler()
exporter = stackdriver_exporter.StackdriverExporter(
project_id=os.environ.get('GCP_PROJECT_ID'),
transport=AsyncTransport)
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor(sampler, exporter)
except:
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor()
else:
logger.info("Tracing disabled.")
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor()
# try:
# googleclouddebugger.enable(
# module='emailserver',
@ -181,16 +164,36 @@ def initStackdriverProfiling():
logger.warning("Could not initialize Stackdriver Profiler after retrying, giving up")
return
if __name__ == '__main__':
logger.info('starting the email service in dummy mode.')
# Profiler
try:
enable_profiler = os.environ["ENABLE_PROFILER"]
if enable_profiler != "1":
profiler = os.getenv('PROFILER', "true")
profiler = profiler.lower()
if profiler != "true":
raise KeyError()
else:
logger.info("Profiler enabled.")
initStackdriverProfiling()
except KeyError:
logger.info("Skipping Stackdriver Profiler Python agent initialization. Set environment variable ENABLE_PROFILER=1 to enable.")
logger.info("Profiler disabled.")
# Tracing
try:
trace = os.getenv('TRACE', "true")
trace = trace.lower()
if trace != "true":
raise KeyError()
else:
logger.info("Tracing enabled.")
sampler = always_on.AlwaysOnSampler()
exporter = stackdriver_exporter.StackdriverExporter(
project_id=os.environ.get('GCP_PROJECT_ID'),
transport=AsyncTransport)
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor(sampler, exporter)
except KeyError:
logger.info("Tracing disabled.")
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor()
start(dummy_mode = True)

View file

@ -108,11 +108,13 @@ func main() {
}
if trace == true {
log.Info("Tracing enabled.")
go initTracing(log)
} else {
log.Info("Tracing disabled.")
}
if profiler == true {
log.Info("Profiling enabled.")
go initProfiling(log, "frontend", "1.0.0")
} else {
log.Info("Profiling disabled")

View file

@ -54,7 +54,7 @@ var (
port = "3550"
reloadCatalog bool
stats bool
stats bool
)
func init() {
@ -96,11 +96,13 @@ func main() {
}
if trace == true {
log.Info("Tracing enabled.")
go initTracing()
} else {
log.Info("Tracing disabled.")
}
if profiler == true {
log.Info("Profiling enabled.")
go initProfiling("productcatalogservice", "1.0.0")
} else {
log.Info("Profiling disabled.")

View file

@ -26,6 +26,7 @@ import grpc
from opencensus.trace.exporters import print_exporter
from opencensus.trace.exporters import stackdriver_exporter
from opencensus.trace.ext.grpc import server_interceptor
from opencensus.common.transports.async_ import AsyncTransport
from opencensus.trace.samplers import always_on
import demo_pb2
@ -74,7 +75,7 @@ class RecommendationService(demo_pb2_grpc.RecommendationServiceServicer):
indices = random.sample(range(num_products), num_return)
# fetch product ids from indices
prod_list = [filtered_products[i] for i in indices]
logger.info("[Recv ListRecommendations] product_ids={}".format(prod_list))
# logger.info("[Recv ListRecommendations] product_ids={}".format(prod_list))
# build and return response
response = demo_pb2.ListRecommendationsResponse()
response.product_ids.extend(prod_list)
@ -90,8 +91,9 @@ if __name__ == "__main__":
# Profiler
try:
profiler = os.getenv('PROFILER', True)
if profiler != "True":
profiler = os.getenv('PROFILER', "true")
profiler = profiler.lower()
if profiler != "true":
raise KeyError()
else:
logger.info("Profiler enabled.")
@ -99,38 +101,42 @@ if __name__ == "__main__":
except KeyError:
logger.info("Profiler disabled.")
# Trace
trace = os.getenv('TRACE', True)
if trace != True:
# Tracing
try:
trace = os.getenv('TRACE', "true")
trace = trace.lower()
if trace != "true":
raise KeyError()
else:
logger.info("Tracing enabled.")
sampler = always_on.AlwaysOnSampler()
exporter = stackdriver_exporter.StackdriverExporter(
project_id=os.environ.get('GCP_PROJECT_ID'),
transport=AsyncTransport)
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor(sampler, exporter)
except KeyError:
logger.info("Tracing disabled.")
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor()
else:
logger.info("Tracing enabled.")
try:
sampler = always_on.AlwaysOnSampler()
exporter = stackdriver_exporter.StackdriverExporter(
project_id=os.environ.get('GCP_PROJECT_ID'),
transport=AsyncTransport)
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor(sampler, exporter)
except:
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor()
# Debugger
debugger = os.getenv('DEBUGGER', True)
if debugger != True:
logger.info("Debugger disabled.")
tracer_interceptor = server_interceptor.OpenCensusServerInterceptor()
else:
logger.info("Debugger enabled.")
try:
try:
debugger = os.getenv('DEBUGGER', "true")
debugger = debugger.lower()
if debugger != "true":
raise KeyError()
else:
logger.info("Debugger enabled.")
try:
googleclouddebugger.enable(
module='recommendationserver',
version='1.0.0'
)
except Exception, err:
logger.error("could not enable debugger")
logger.error(traceback.print_exc())
pass
except Exception, err:
logger.error("Could not enable debugger")
logger.error(traceback.print_exc())
pass
except KeyError:
logger.info("Debugger disabled.")
port = os.environ.get('PORT', "8080")
catalog_addr = os.environ.get('PRODUCT_CATALOG_SERVICE_ADDR', '')

View file

@ -78,11 +78,13 @@ func main() {
}
if trace == true {
log.Info("Tracing enabled.")
go initTracing()
} else {
log.Info("Tracing disabled.")
}
if profiler == true {
log.Info("Profiling enabled.")
go initProfiling("shippingservice", "1.0.0")
} else {
log.Info("Profiling disabled.")