text: // Copyright 2010-2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  // Licensed under the Apache-2.0 License on an "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND.   
  
  // ABOUT THIS NODE.JS SAMPLE: This sample is part of the SDK for JavaScript Developer Guide topic at
  // https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/ec2-example-managing-instances.html
  // Load the AWS SDK for Node.js
  var AWS = require('aws-sdk');
  // Set the region 
  AWS.config.update({region: 'REGION'});
  
  // Create EC2 service object
  var ec2 = new AWS.EC2({apiVersion: '2016-11-15'});
  
  var params = {
    InstanceIds: ['INSTANCE_ID'],
    DryRun: true
  };
  
  if (process.argv[2].toUpperCase() === "ON") {
    // call EC2 to activate monitoring for selected instance
    ec2.monitorInstances(params, function(err, data) {
      if (err && err.code === 'DryRunOperation') {
        params.DryRun = false;
        ec2.monitorInstances(params, function(err, data) {
            if (err) {
              console.log("Error", err);
            } else if (data) {
              console.log("Success", data.InstanceMonitorings);
            }
        });
      } else {
        console.log("You don't have permission to change instance monitoring.");
      }
    });
  } else if (process.argv[2].toUpperCase() === "OFF") {
    // call EC2 to activate monitoring for selected instance
    ec2.monitorInstances(params, function(err, data) {
      if (err && err.code === 'DryRunOperation') {
        params.DryRun = false;
        ec2.unmonitorInstances(params, function(err, data) {
            if (err) {
              console.log("Error", err);
            } else if (data) {
              console.log("Success", data.InstanceMonitorings);
            }
        });
      } else {
        console.log("You don't have permission to change instance monitoring.");
      }
    });
  }
  