diff --git a/lvmsnapshot.py b/lvmsnapshot.py
index c2145b59c406f843d04f6ad9c7bbaf60c37fc92b..2bfc37078c9dccf1595d683739737725cf44dbf5 100644
--- a/lvmsnapshot.py
+++ b/lvmsnapshot.py
@@ -86,7 +86,7 @@ def run_process(command, check=True):
     if result.stdout:
         logging.info(result.stdout.decode("utf-8").strip())
     if result.stderr:
-        logging.warn(result.stderr.decode("utf-8").strip())
+        logging.warning(result.stderr.decode("utf-8").strip())
     return result
 
 @contextmanager
@@ -272,7 +272,7 @@ class Snapshot:
             ]
             run_process(remove_command, check=True)
         except sp.CalledProcessError:
-            logging.warn("Removing {} failed".format(self.get_name()))
+            logging.warning("Removing {} failed".format(self.get_name()))
 
     def unmount(self):
         logging.debug("unmounting snapshot {}".format(self.get_name()))
@@ -410,9 +410,9 @@ def update_snapshots():
     snapshots = Snapshot.list_snapshots()
     periods, min_interval = Config.periods, Config.min_interval
     for volume in set(periods.keys()) - set(snapshots.keys()):
-        logging.warn("Warning: Volume {} is configured but does not exist or has no snapshots.".format(volume))
+        logging.warning("Warning: Volume {} is configured but does not exist or has no snapshots.".format(volume))
     for volume in set(snapshots.keys()) - set(periods.keys()):
-        logging.warn("Warning: Volume {} does exist but is not configured.".format(volume))
+        logging.warning("Warning: Volume {} does exist but is not configured.".format(volume))
         snapshots.pop(volume)
     for volume in snapshots:
         unmarked_snapshots = mark_snapshots(snapshots[volume], periods[volume], min_interval)