{"id":10371,"date":"2023-03-03T12:44:43","date_gmt":"2023-03-03T17:44:43","guid":{"rendered":"https:\/\/www.redline13.com\/blog\/?p=10371"},"modified":"2023-06-22T14:18:08","modified_gmt":"2023-06-22T18:18:08","slug":"extracting-metadata-from-load-generator-instances","status":"publish","type":"post","link":"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/","title":{"rendered":"Extracting Metadata from Load Generator Instances"},"content":{"rendered":"<p><a id=\"post-10371-_dfflu0ifxekp\"><\/a> <img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-10372\" src=\"https:\/\/www.redline13.com\/blog\/wp-content\/uploads\/2023\/03\/word-image-10371-1.png\" alt=\"Extracting Metadata from Load Generator Instances\" width=\"400\" height=\"300\" srcset=\"https:\/\/www.redline13.com\/blog\/wp-content\/uploads\/2023\/03\/word-image-10371-1.png 400w, https:\/\/www.redline13.com\/blog\/wp-content\/uploads\/2023\/03\/word-image-10371-1-300x225.png 300w\" sizes=\"auto, (max-width: 400px) 100vw, 400px\" \/><\/p>\n<p>RedLine13 load generator instances are backed by AWS <a href=\"https:\/\/aws.amazon.com\/ec2\/\">EC2<\/a> instances. <a href=\"https:\/\/aws.amazon.com\/\">AWS<\/a> exposes a special locally-addressable <a href=\"https:\/\/docs.aws.amazon.com\/AWSEC2\/latest\/UserGuide\/instancedata-data-categories.html\">endpoint<\/a> that returns metadata about that instance. Using this, you can ascertain such things as the region in which your instance resides, private and public addresses, and instance tags amongst other useful data points.<\/p>\n<p>A specific example of where this would be useful is where you have defined a load test to run in multiple regions, with a number of EC2-backed load generator servers in each. You can call the <a href=\"https:\/\/docs.aws.amazon.com\/AWSEC2\/latest\/UserGuide\/instancedata-dynamic-data-retrieval.html\">metadata endpoint<\/a> from your load test and determine specific actions to take.<\/p>\n<p>One customer recently had this exact use case. They were running a single load test across multiple <a href=\"https:\/\/docs.aws.amazon.com\/AWSEC2\/latest\/UserGuide\/using-regions-availability-zones.html\">AWS regions<\/a>, with each region using a different dataset from separate <a href=\"https:\/\/www.redline13.com\/blog\/2021\/12\/parameterizing-jmeter-tests-from-csv\/\">CSV file data sources<\/a>. The <code><span style=\"color: #800000;\"><strong>placement\/region<\/strong><\/span><\/code> call makes it possible to extract the region and subnet location in one easy call:<\/p>\n<p><span style=\"color: #800000;\"><strong><code><span style=\"color: #800000;\">http:\/\/169.254.169.254\/latest\/meta-data\/placement\/availability-zone<\/span><\/code><\/strong><\/span><\/p>\n<p>The result of the above request when run on the EC2 instance returns a plain-text string containing the AWS region and subnet:<\/p>\n<p><span style=\"color: #800000;\"><strong><code><span style=\"color: #800000;\">us-east-1f<\/span><\/code><\/strong><\/span><\/p>\n<p>When incorporated into your test plan (<em>e.g.<\/em>, using a <a href=\"https:\/\/jmeter.apache.org\/usermanual\/component_reference.html#JSR223_PreProcessor\">JSR223 Preprocessor<\/a> within <a href=\"https:\/\/www.redline13.com\/blog\/docs\/jmeter-tests\/\">JMeter<\/a>) your script can logically select between CSV files or other test actions which are specific to the region in which the test is running.<\/p>\n<hr \/>\n<p>Did you know that RedLine13 offers a limited time full-featured free trial? <a href=\"https:\/\/www.redline13.com\/Service\">Sign up now<\/a> and start testing today!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>RedLine13 load generator instances are backed by AWS EC2 instances. AWS exposes a special locally-addressable endpoint that returns metadata about that instance. Using this, you can ascertain such things as the region in which your instance resides, private and public addresses, and instance tags amongst other useful data points. A specific example of where this would be useful is where you have defined a load test to run in multiple regions, with a number of EC2-backed<a class=\"more-link\" href=\"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/\">Read More &rarr;<\/a><\/p>\n","protected":false},"author":11,"featured_media":10372,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16,2],"tags":[88,93,152,181,283,318,609,424],"class_list":{"0":"entry","1":"post","2":"publish","3":"author-dkoziel","4":"post-10371","6":"format-standard","7":"has-post-thumbnail","8":"category-aws","9":"category-blog","10":"post_tag-aws","11":"post_tag-aws-regions","12":"post_tag-csv-file","13":"post_tag-ec2","14":"post_tag-jmeter","15":"post_tag-load-testing","16":"post_tag-metadata","17":"post_tag-redline13"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.12 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Extracting Metadata from Load Generator Instances - RedLine13<\/title>\n<meta name=\"description\" content=\"You can use AWS metadata to extract region data, IP addresses, and tags amongst other useful data points about your load generator instance.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Extracting Metadata from Load Generator Instances - RedLine13\" \/>\n<meta property=\"og:description\" content=\"You can use AWS metadata to extract region data, IP addresses, and tags amongst other useful data points about your load generator instance.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/\" \/>\n<meta property=\"og:site_name\" content=\"RedLine13\" \/>\n<meta property=\"article:published_time\" content=\"2023-03-03T17:44:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-06-22T18:18:08+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.redline13.com\/blog\/wp-content\/uploads\/2023\/03\/word-image-10371-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"400\" \/>\n\t<meta property=\"og:image:height\" content=\"300\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"David Koziel\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"David Koziel\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/\"},\"author\":{\"name\":\"David Koziel\",\"@id\":\"https:\/\/www.redline13.com\/blog\/#\/schema\/person\/51d282221e3230ab35f964f98ada9b20\"},\"headline\":\"Extracting Metadata from Load Generator Instances\",\"datePublished\":\"2023-03-03T17:44:43+00:00\",\"dateModified\":\"2023-06-22T18:18:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/\"},\"wordCount\":231,\"publisher\":{\"@id\":\"https:\/\/www.redline13.com\/blog\/#organization\"},\"keywords\":[\"AWS\",\"AWS Regions\",\"CSV File\",\"ec2\",\"JMeter\",\"Load Testing\",\"Metadata\",\"RedLine13\"],\"articleSection\":[\"AWS\",\"Blog\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/\",\"url\":\"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/\",\"name\":\"Extracting Metadata from Load Generator Instances - RedLine13\",\"isPartOf\":{\"@id\":\"https:\/\/www.redline13.com\/blog\/#website\"},\"datePublished\":\"2023-03-03T17:44:43+00:00\",\"dateModified\":\"2023-06-22T18:18:08+00:00\",\"description\":\"You can use AWS metadata to extract region data, IP addresses, and tags amongst other useful data points about your load generator instance.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.redline13.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Extracting Metadata from Load Generator Instances\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.redline13.com\/blog\/#website\",\"url\":\"https:\/\/www.redline13.com\/blog\/\",\"name\":\"RedLine13\",\"description\":\"(Almost) Free Load Testing in the Cloud\",\"publisher\":{\"@id\":\"https:\/\/www.redline13.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.redline13.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.redline13.com\/blog\/#organization\",\"name\":\"RedLine13\",\"url\":\"https:\/\/www.redline13.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.redline13.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.redline13.com\/blog\/wp-content\/uploads\/2013\/06\/cropped-rl13-header-logo.jpg\",\"contentUrl\":\"https:\/\/www.redline13.com\/blog\/wp-content\/uploads\/2013\/06\/cropped-rl13-header-logo.jpg\",\"width\":300,\"height\":68,\"caption\":\"RedLine13\"},\"image\":{\"@id\":\"https:\/\/www.redline13.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.redline13.com\/blog\/#\/schema\/person\/51d282221e3230ab35f964f98ada9b20\",\"name\":\"David Koziel\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.redline13.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2babf644e0993fc86893c24d7525f1e3be114a8746c01249797f25587ae1697a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2babf644e0993fc86893c24d7525f1e3be114a8746c01249797f25587ae1697a?s=96&d=mm&r=g\",\"caption\":\"David Koziel\"},\"url\":\"https:\/\/www.redline13.com\/blog\/author\/dkoziel\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Extracting Metadata from Load Generator Instances - RedLine13","description":"You can use AWS metadata to extract region data, IP addresses, and tags amongst other useful data points about your load generator instance.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/","og_locale":"en_US","og_type":"article","og_title":"Extracting Metadata from Load Generator Instances - RedLine13","og_description":"You can use AWS metadata to extract region data, IP addresses, and tags amongst other useful data points about your load generator instance.","og_url":"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/","og_site_name":"RedLine13","article_published_time":"2023-03-03T17:44:43+00:00","article_modified_time":"2023-06-22T18:18:08+00:00","og_image":[{"width":400,"height":300,"url":"https:\/\/www.redline13.com\/blog\/wp-content\/uploads\/2023\/03\/word-image-10371-1.png","type":"image\/png"}],"author":"David Koziel","twitter_card":"summary_large_image","twitter_misc":{"Written by":"David Koziel","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/#article","isPartOf":{"@id":"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/"},"author":{"name":"David Koziel","@id":"https:\/\/www.redline13.com\/blog\/#\/schema\/person\/51d282221e3230ab35f964f98ada9b20"},"headline":"Extracting Metadata from Load Generator Instances","datePublished":"2023-03-03T17:44:43+00:00","dateModified":"2023-06-22T18:18:08+00:00","mainEntityOfPage":{"@id":"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/"},"wordCount":231,"publisher":{"@id":"https:\/\/www.redline13.com\/blog\/#organization"},"keywords":["AWS","AWS Regions","CSV File","ec2","JMeter","Load Testing","Metadata","RedLine13"],"articleSection":["AWS","Blog"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/","url":"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/","name":"Extracting Metadata from Load Generator Instances - RedLine13","isPartOf":{"@id":"https:\/\/www.redline13.com\/blog\/#website"},"datePublished":"2023-03-03T17:44:43+00:00","dateModified":"2023-06-22T18:18:08+00:00","description":"You can use AWS metadata to extract region data, IP addresses, and tags amongst other useful data points about your load generator instance.","breadcrumb":{"@id":"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.redline13.com\/blog\/2023\/03\/extracting-metadata-from-load-generator-instances\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.redline13.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Extracting Metadata from Load Generator Instances"}]},{"@type":"WebSite","@id":"https:\/\/www.redline13.com\/blog\/#website","url":"https:\/\/www.redline13.com\/blog\/","name":"RedLine13","description":"(Almost) Free Load Testing in the Cloud","publisher":{"@id":"https:\/\/www.redline13.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.redline13.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.redline13.com\/blog\/#organization","name":"RedLine13","url":"https:\/\/www.redline13.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.redline13.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.redline13.com\/blog\/wp-content\/uploads\/2013\/06\/cropped-rl13-header-logo.jpg","contentUrl":"https:\/\/www.redline13.com\/blog\/wp-content\/uploads\/2013\/06\/cropped-rl13-header-logo.jpg","width":300,"height":68,"caption":"RedLine13"},"image":{"@id":"https:\/\/www.redline13.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.redline13.com\/blog\/#\/schema\/person\/51d282221e3230ab35f964f98ada9b20","name":"David Koziel","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.redline13.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/2babf644e0993fc86893c24d7525f1e3be114a8746c01249797f25587ae1697a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2babf644e0993fc86893c24d7525f1e3be114a8746c01249797f25587ae1697a?s=96&d=mm&r=g","caption":"David Koziel"},"url":"https:\/\/www.redline13.com\/blog\/author\/dkoziel\/"}]}},"_links":{"self":[{"href":"https:\/\/www.redline13.com\/blog\/wp-json\/wp\/v2\/posts\/10371","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.redline13.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.redline13.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.redline13.com\/blog\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.redline13.com\/blog\/wp-json\/wp\/v2\/comments?post=10371"}],"version-history":[{"count":1,"href":"https:\/\/www.redline13.com\/blog\/wp-json\/wp\/v2\/posts\/10371\/revisions"}],"predecessor-version":[{"id":10373,"href":"https:\/\/www.redline13.com\/blog\/wp-json\/wp\/v2\/posts\/10371\/revisions\/10373"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.redline13.com\/blog\/wp-json\/wp\/v2\/media\/10372"}],"wp:attachment":[{"href":"https:\/\/www.redline13.com\/blog\/wp-json\/wp\/v2\/media?parent=10371"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.redline13.com\/blog\/wp-json\/wp\/v2\/categories?post=10371"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.redline13.com\/blog\/wp-json\/wp\/v2\/tags?post=10371"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}