Ordering posts by custom field and grouped by month

<?php

  $period = date("Y-m-d");

  $args = array(
  'post_type'=>'event',
  'posts_per_page'=> -1,
  'order'=> 'DESC',
  'orderby'=> 'meta_value',    
  'meta_key'=>'event_start_date'
  'meta_value' => $period,


 )

 $events = new WP_Query( $args ); 
if ($events->have_posts()) : while (have_posts()) : the_post();

the_title();
// (etc.)

endwhile;
endif; 

?>   

Please follow below link for details.

Link for details

link for code source

Thanks!