anchor.diff:                              spawn(fun() ->
                                   fslogic_context:set_user_context(Ctx),
                                   {ok, #fileattributes{size = FileSize}} = logical_files_manager:getfileattr(File),
  +                                {ok, FullFileName} = fslogic_path:get_full_file_name(File), %todo cache somehow
                                   WriteEvent = [{"type", "write_event"}, {"user_dn", fslogic_context:get_user_dn()},
  -                                    {"bytes", Res}, {"blocks", [{FileSize - Res, Res}]}],
  +                                    {"bytes", Res}, {"blocks", [{FileSize - Res, Res}]}, {"filePath", FullFileName}],
                                   gen_server:call(?Dispatcher_Name, {cluster_rengine, 1, {event_arrived, WriteEvent}}),
                                   WriteEventStats = [{"type", "write_for_stats"}, {"user_dn", fslogic_context:get_user_dn()},
  -                                    {"bytes", Res}, {"blocks", [{FileSize - Res, Res}]}],
  +                                    {"bytes", Res}, {"blocks", [{FileSize - Res, Res}]}, {"filePath", FullFileName}],
                                   gen_server:call(?Dispatcher_Name, {cluster_rengine, 1, {event_arrived, WriteEventStats}}),
                                   WriteEventAvailableBlocks = [{"type", "write_for_available_blocks"}, {"user_dn", fslogic_context:get_user_dn()},
  -                                    {"bytes", Res}, {"blocks", [{FileSize - Res, Res}]}, {"filePath", File}],
  +                                    {"bytes", Res}, {"blocks", [{FileSize - Res, Res}]}, {"filePath", FullFileName}],
                                   gen_server:call(?Dispatcher_Name, {cluster_rengine, 1, {event_arrived, WriteEventAvailableBlocks}})
                               end);
                           _ ->
  
positive.code:     end;
  write(File, Buf) ->
      ct:print("write/2 ~p",[File]),
      case write_enabled(fslogic_context:get_user_dn()) of
          true ->
              {Response, Response2} = getfilelocation(File),
  
negative.code:             Res = storage_files_manager:truncate(Storage_helper_info, FileId, Size),
              case {Res, event_production_enabled("truncate_event")} of
                  {ok, true} ->
                      Ctx = fslogic_context:get_user_context(),
                      spawn(fun() ->
                          fslogic_context:set_user_context(Ctx),
                          {ok, FullFileName} = fslogic_path:get_full_file_name(File), %todo cache somehow
                          TruncateEvent = [{"type", "truncate_event"}, {"user_dn", fslogic_context:get_user_dn()}, {"filePath", File}, {"filePath", FullFileName}],
                          gen_server:call(?Dispatcher_Name, {cluster_rengine, 1, {event_arrived, TruncateEvent}}),
                          TruncateEventAvailableBlocks = [{"type", "truncate_for_available_blocks"}, {"user_dn", fslogic_context:get_user_dn()}, {"filePath", File},
                              {"blocks", [{0, Size}]}, {"filePath", FullFileName}],
                          gen_server:call(?Dispatcher_Name, {cluster_rengine, 1, {event_arrived, TruncateEventAvailableBlocks}})
                      end);
                  _ ->
                      ok
              end,
  