def getSmallEnvDict(): try: fullEnvDict = vmsgcvizutils.envFileAsDictionary(vmsGCReportDirectory + os.path.sep + 'env') except: fullEnvDict = {} smallEnvDict = { 'ec2PublicHostname' : fullEnvDict.get('EC2_PUBLIC_HOSTNAME', 'no-public-hostname'), 'instanceID' : fullEnvDict.get('EC2_INSTANCE_ID', 'no-instance-id'), 'instanceType' : fullEnvDict.get('EC2_INSTANCE_TYPE', 'no-instance-type'), 'appname' : fullEnvDict.get('NETFLIX_APP', 'unknown-app'), 'asg' : fullEnvDict.get('NETFLIX_AUTO_SCALE_GROUP', 'unknown-asg'), 'env' : fullEnvDict.get('NETFLIX_ENVIRONMENT', 'unknown-env'), } return smallEnvDict
def getSmallEnvDict(): try: fullEnvDict = vmsgcvizutils.envFileAsDictionary(vmsGCReportDirectory + os.path.sep + 'env') except: fullEnvDict = {} smallEnvDict = { 'ec2PublicHostname': fullEnvDict.get('EC2_PUBLIC_HOSTNAME', 'no-public-hostname'), 'instanceID': fullEnvDict.get('EC2_INSTANCE_ID', 'no-instance-id'), 'instanceType': fullEnvDict.get('EC2_INSTANCE_TYPE', 'no-instance-type'), 'appname': fullEnvDict.get('NETFLIX_APP', 'unknown-app'), 'asg': fullEnvDict.get('NETFLIX_AUTO_SCALE_GROUP', 'unknown-asg'), 'env': fullEnvDict.get('NETFLIX_ENVIRONMENT', 'unknown-env'), } return smallEnvDict
"CMS-concurrent-reset" : ("g,", 1), #(concurrent?) "ParallelScavengeYoungGen" : ("ro", 5), #(stop-the-world) "DefNew" : ("ro", 5), #(stop-the-world) "unknown" : ("r*", 15), #??? } # These markers are present in gc.log but not accounted for above as they have no duration. # They might be interesting to visualize but we currently minimize the CMS events anyway. # CMS-concurrent-mark-start # CMS-concurrent-preclean-start # CMS-concurrent-sweep-start # CMS-concurrent-reset-start # CMS-concurrent-abortable-preclean-start ## Read environmental information fullEnvDict = vmsgcvizutils.envFileAsDictionary(vmsGCReportDirectory + os.path.sep + 'env') smallEnvDict = { 'ec2PublicHostname' : fullEnvDict.get('EC2_PUBLIC_HOSTNAME', 'no-public-hostname'), 'instanceID' : fullEnvDict.get('EC2_INSTANCE_ID', 'no-instance-id'), 'instanceType' : fullEnvDict.get('EC2_INSTANCE_TYPE', 'no-instance-type'), 'appname' : fullEnvDict.get('NETFLIX_APP', 'unknown-app'), 'asg' : fullEnvDict.get('NETFLIX_AUTO_SCALE_GROUP', 'unknown-asg'), 'env' : fullEnvDict.get('NETFLIX_ENVIRONMENT', 'unknown-env'), } ## Read GC event records, one file per type. # The gc event records have this format: # secs_since_epoch,datetimestamp,secs_since_jvm_boot,gc_event_type,gc_event_duration_in_seconds # for example: # 1333055023.424,2012-03-29T21:03:43.424+0000,11.272,ParNew,0.19 # in numpy-speak:
"CMS-concurrent-reset": ("g,", 1), #(concurrent?) "ParallelScavengeYoungGen": ("ro", 5), #(stop-the-world) "DefNew": ("ro", 5), #(stop-the-world) "unknown": ("r*", 15), #??? } # These markers are present in gc.log but not accounted for above as they have no duration. # They might be interesting to visualize but we currently minimize the CMS events anyway. # CMS-concurrent-mark-start # CMS-concurrent-preclean-start # CMS-concurrent-sweep-start # CMS-concurrent-reset-start # CMS-concurrent-abortable-preclean-start ## Read environmental information fullEnvDict = vmsgcvizutils.envFileAsDictionary(vmsGCReportDirectory + os.path.sep + 'env') smallEnvDict = { 'ec2PublicHostname': fullEnvDict.get('EC2_PUBLIC_HOSTNAME', 'no-public-hostname'), 'instanceID': fullEnvDict.get('EC2_INSTANCE_ID', 'no-instance-id'), 'instanceType': fullEnvDict.get('EC2_INSTANCE_TYPE', 'no-instance-type'), 'appname': fullEnvDict.get('NETFLIX_APP', 'unknown-app'), 'asg': fullEnvDict.get('NETFLIX_AUTO_SCALE_GROUP', 'unknown-asg'), 'env': fullEnvDict.get('NETFLIX_ENVIRONMENT', 'unknown-env'), }