mirror of
https://codeberg.org/comaps/comaps
synced 2025-12-19 04:53:36 +00:00
[generator] Improve logging
- more logging for various stages start/finish - silenced some too repetitive and common warnings (changed to LDEBUG) Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
This commit is contained in:
@@ -33,7 +33,7 @@ AddressesHolder::AddressInfo FromFB(FeatureBuilder const & fb)
|
|||||||
// - "addr:interpolation: No beg/end address point" = 89774
|
// - "addr:interpolation: No beg/end address point" = 89774
|
||||||
void LogWarning(std::string const & msg, uint64_t id)
|
void LogWarning(std::string const & msg, uint64_t id)
|
||||||
{
|
{
|
||||||
LOG(LWARNING, ("addr:interpolation: " + msg, id));
|
LOG(LDEBUG, ("addr:interpolation: " + msg, id));
|
||||||
}
|
}
|
||||||
} // namespace
|
} // namespace
|
||||||
|
|
||||||
@@ -190,6 +190,8 @@ void AddressesCollector::CollectFeature(FeatureBuilder const & fb, OsmElement co
|
|||||||
|
|
||||||
void AddressesCollector::Save()
|
void AddressesCollector::Save()
|
||||||
{
|
{
|
||||||
|
LOG(LINFO, ("Saving addresses to", GetFilename()));
|
||||||
|
|
||||||
FileWriter writer(GetFilename());
|
FileWriter writer(GetFilename());
|
||||||
|
|
||||||
for (auto const & e : m_interpolWays)
|
for (auto const & e : m_interpolWays)
|
||||||
@@ -215,6 +217,8 @@ void AddressesCollector::Save()
|
|||||||
rw::Write(writer, !beg->m_street.empty() ? beg->m_street : end->m_street);
|
rw::Write(writer, !beg->m_street.empty() ? beg->m_street : end->m_street);
|
||||||
rw::Write(writer, !beg->m_postcode.empty() ? beg->m_postcode : end->m_postcode);
|
rw::Write(writer, !beg->m_postcode.empty() ? beg->m_postcode : end->m_postcode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LOG(LINFO, ("Finished saving addresses"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void AddressesCollector::MergeInto(AddressesCollector & collector) const
|
void AddressesCollector::MergeInto(AddressesCollector & collector) const
|
||||||
|
|||||||
@@ -52,6 +52,7 @@ void BoundaryPostcodeCollector::Collect(OsmElement const & el)
|
|||||||
|
|
||||||
void BoundaryPostcodeCollector::Save()
|
void BoundaryPostcodeCollector::Save()
|
||||||
{
|
{
|
||||||
|
LOG(LINFO, ("Saving postcode boundaries to", GetFilename()));
|
||||||
std::sort(m_data.begin(), m_data.end());
|
std::sort(m_data.begin(), m_data.end());
|
||||||
|
|
||||||
FileWriter writer(GetFilename());
|
FileWriter writer(GetFilename());
|
||||||
@@ -60,6 +61,8 @@ void BoundaryPostcodeCollector::Save()
|
|||||||
rw::WriteNonEmpty(writer, p.first);
|
rw::WriteNonEmpty(writer, p.first);
|
||||||
rw::WriteVectorOfPOD(writer, p.second);
|
rw::WriteVectorOfPOD(writer, p.second);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LOG(LINFO, ("Finished saving postcode boundaries"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void BoundaryPostcodeCollector::MergeInto(BoundaryPostcodeCollector & collector) const
|
void BoundaryPostcodeCollector::MergeInto(BoundaryPostcodeCollector & collector) const
|
||||||
|
|||||||
@@ -130,12 +130,14 @@ void CameraCollector::MergeInto(CameraCollector & collector) const
|
|||||||
|
|
||||||
void CameraCollector::Save()
|
void CameraCollector::Save()
|
||||||
{
|
{
|
||||||
LOG(LINFO, ("Saving speed cameras to", GetFilename()));
|
LOG(LINFO, ("Associating speed cameras with ways..."));
|
||||||
|
|
||||||
FillCameraInWays();
|
FillCameraInWays();
|
||||||
|
|
||||||
|
LOG(LINFO, ("Saving speed cameras to", GetFilename()));
|
||||||
FileWriter writer(GetFilename());
|
FileWriter writer(GetFilename());
|
||||||
ForEachCamera([&](auto const & camera) { CameraInfo::Write(writer, camera); });
|
ForEachCamera([&](auto const & camera) { CameraInfo::Write(writer, camera); });
|
||||||
|
LOG(LINFO, ("Finished saving speed cameras"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void CameraCollector::OrderCollectedData()
|
void CameraCollector::OrderCollectedData()
|
||||||
|
|||||||
@@ -47,6 +47,7 @@ void MiniRoundaboutCollector::CollectFeature(FeatureBuilder const & feature, Osm
|
|||||||
|
|
||||||
void MiniRoundaboutCollector::Save()
|
void MiniRoundaboutCollector::Save()
|
||||||
{
|
{
|
||||||
|
LOG(LINFO, ("Saving mini roundabouts to", GetFilename()));
|
||||||
/// @todo We assign only car roads here into MiniRoundaboutInfo.m_ways.
|
/// @todo We assign only car roads here into MiniRoundaboutInfo.m_ways.
|
||||||
/// Should also collect other highways (like path or pedestrian) in very general case.
|
/// Should also collect other highways (like path or pedestrian) in very general case.
|
||||||
/// https://www.openstreetmap.org/way/220672898
|
/// https://www.openstreetmap.org/way/220672898
|
||||||
@@ -66,6 +67,7 @@ void MiniRoundaboutCollector::Save()
|
|||||||
if (miniRoundabout.Normalize())
|
if (miniRoundabout.Normalize())
|
||||||
WriteMiniRoundabout(writer, miniRoundabout);
|
WriteMiniRoundabout(writer, miniRoundabout);
|
||||||
});
|
});
|
||||||
|
LOG(LINFO, ("Finished saving mini roundabouts"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void MiniRoundaboutCollector::MergeInto(MiniRoundaboutCollector & collector) const
|
void MiniRoundaboutCollector::MergeInto(MiniRoundaboutCollector & collector) const
|
||||||
|
|||||||
@@ -443,7 +443,9 @@ void RoutingCityBoundariesCollector::Collect(OsmElement const & elem)
|
|||||||
|
|
||||||
void RoutingCityBoundariesCollector::Save()
|
void RoutingCityBoundariesCollector::Save()
|
||||||
{
|
{
|
||||||
|
LOG(LINFO, ("Saving routing city boundaries to", GetFilename()));
|
||||||
m_builder.Save(GetFilename());
|
m_builder.Save(GetFilename());
|
||||||
|
LOG(LINFO, ("Finished saving routing city boundaries"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void RoutingCityBoundariesCollector::MergeInto(RoutingCityBoundariesCollector & collector) const
|
void RoutingCityBoundariesCollector::MergeInto(RoutingCityBoundariesCollector & collector) const
|
||||||
|
|||||||
@@ -20,6 +20,8 @@ void FinalProcessorCities::Process()
|
|||||||
{
|
{
|
||||||
using namespace feature;
|
using namespace feature;
|
||||||
|
|
||||||
|
LOG(LINFO, ("Processing cities..."));
|
||||||
|
|
||||||
std::mutex mutex;
|
std::mutex mutex;
|
||||||
auto const & localityChecker = ftypes::IsLocalityChecker::Instance();
|
auto const & localityChecker = ftypes::IsLocalityChecker::Instance();
|
||||||
|
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ void CoastlineFinalProcessor::SetCoastlinesFilenames(std::string const & geomFil
|
|||||||
|
|
||||||
void CoastlineFinalProcessor::Process()
|
void CoastlineFinalProcessor::Process()
|
||||||
{
|
{
|
||||||
|
LOG(LINFO, ("Processing coastline..."));
|
||||||
ForEachFeatureRawFormat<serialization_policy::MaxAccuracy>(
|
ForEachFeatureRawFormat<serialization_policy::MaxAccuracy>(
|
||||||
m_filename, [this](FeatureBuilder const & fb, uint64_t) { m_generator.Process(fb); });
|
m_filename, [this](FeatureBuilder const & fb, uint64_t) { m_generator.Process(fb); });
|
||||||
|
|
||||||
@@ -29,7 +30,7 @@ void CoastlineFinalProcessor::Process()
|
|||||||
// Check and stop if some coasts were not merged.
|
// Check and stop if some coasts were not merged.
|
||||||
CHECK(m_generator.Finish(), ());
|
CHECK(m_generator.Finish(), ());
|
||||||
|
|
||||||
LOG(LINFO, ("Generating coastline polygons."));
|
LOG(LINFO, ("Generating coastline polygons..."));
|
||||||
size_t totalFeatures = 0;
|
size_t totalFeatures = 0;
|
||||||
size_t totalPoints = 0;
|
size_t totalPoints = 0;
|
||||||
size_t totalPolygons = 0;
|
size_t totalPolygons = 0;
|
||||||
@@ -41,6 +42,6 @@ void CoastlineFinalProcessor::Process()
|
|||||||
totalPolygons += fb.GetPolygonsCount();
|
totalPolygons += fb.GetPolygonsCount();
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG(LINFO, ("Total features:", totalFeatures, "total polygons:", totalPolygons, "total points:", totalPoints));
|
LOG(LINFO, ("Total coastline features:", totalFeatures, "total polygons:", totalPolygons, "total points:", totalPoints));
|
||||||
}
|
}
|
||||||
} // namespace generator
|
} // namespace generator
|
||||||
|
|||||||
@@ -63,6 +63,8 @@ void ComplexFinalProcessor::UseBuildingPartsInfo(std::string const & filename)
|
|||||||
|
|
||||||
void ComplexFinalProcessor::Process()
|
void ComplexFinalProcessor::Process()
|
||||||
{
|
{
|
||||||
|
LOG(LINFO, ("Processing complex features..."));
|
||||||
|
|
||||||
if (!m_buildingPartsFilename.empty())
|
if (!m_buildingPartsFilename.empty())
|
||||||
m_buildingToParts = std::make_unique<BuildingToBuildingPartsMap>(m_buildingPartsFilename);
|
m_buildingToParts = std::make_unique<BuildingToBuildingPartsMap>(m_buildingPartsFilename);
|
||||||
|
|
||||||
|
|||||||
@@ -46,24 +46,30 @@ void CountryFinalProcessor::Process()
|
|||||||
/// @todo Make "straight-way" processing. There is no need to make many functions and
|
/// @todo Make "straight-way" processing. There is no need to make many functions and
|
||||||
/// many read-write FeatureBuilder ops here.
|
/// many read-write FeatureBuilder ops here.
|
||||||
|
|
||||||
|
LOG(LINFO, ("Processing coastline..."));
|
||||||
if (!m_coastlineGeomFilename.empty())
|
if (!m_coastlineGeomFilename.empty())
|
||||||
ProcessCoastline();
|
ProcessCoastline();
|
||||||
|
|
||||||
// 1. Process roundabouts and addr:interpolation first.
|
// 1. Process roundabouts and addr:interpolation first.
|
||||||
|
LOG(LINFO, ("Processing roundabouts..."));
|
||||||
if (!m_miniRoundaboutsFilename.empty() || !m_addrInterpolFilename.empty())
|
if (!m_miniRoundaboutsFilename.empty() || !m_addrInterpolFilename.empty())
|
||||||
ProcessRoundabouts();
|
ProcessRoundabouts();
|
||||||
|
|
||||||
// 2. Process additional addresses then.
|
// 2. Process additional addresses then.
|
||||||
|
LOG(LINFO, ("Adding addresses..."));
|
||||||
if (!m_addressPath.empty())
|
if (!m_addressPath.empty())
|
||||||
AddAddresses();
|
AddAddresses();
|
||||||
|
|
||||||
|
LOG(LINFO, ("Adding fake nodes..."));
|
||||||
if (!m_fakeNodesFilename.empty())
|
if (!m_fakeNodesFilename.empty())
|
||||||
AddFakeNodes();
|
AddFakeNodes();
|
||||||
|
|
||||||
|
LOG(LINFO, ("Adding isolines..."));
|
||||||
if (!m_isolinesPath.empty())
|
if (!m_isolinesPath.empty())
|
||||||
AddIsolines();
|
AddIsolines();
|
||||||
|
|
||||||
// DropProhibitedSpeedCameras();
|
// DropProhibitedSpeedCameras();
|
||||||
|
LOG(LINFO, ("Processing building parts..."));
|
||||||
ProcessBuildingParts();
|
ProcessBuildingParts();
|
||||||
|
|
||||||
// Finish();
|
// Finish();
|
||||||
|
|||||||
@@ -23,11 +23,11 @@ void WorldFinalProcessor::Process()
|
|||||||
auto fbs = ReadAllDatRawFormat<serialization_policy::MaxAccuracy>(m_worldTmpFilename);
|
auto fbs = ReadAllDatRawFormat<serialization_policy::MaxAccuracy>(m_worldTmpFilename);
|
||||||
Order(fbs);
|
Order(fbs);
|
||||||
WorldGenerator generator(m_worldTmpFilename, m_coastlineGeomFilename, m_popularPlacesFilename);
|
WorldGenerator generator(m_worldTmpFilename, m_coastlineGeomFilename, m_popularPlacesFilename);
|
||||||
LOG(LINFO, ("Process World features"));
|
LOG(LINFO, ("Processing World features..."));
|
||||||
for (auto & fb : fbs)
|
for (auto & fb : fbs)
|
||||||
generator.Process(fb);
|
generator.Process(fb);
|
||||||
|
|
||||||
LOG(LINFO, ("Merge World lines"));
|
LOG(LINFO, ("Merging World lines..."));
|
||||||
generator.DoMerge();
|
generator.DoMerge();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -199,6 +199,8 @@ void MetalinesBuilder::Finish()
|
|||||||
|
|
||||||
void MetalinesBuilder::Save()
|
void MetalinesBuilder::Save()
|
||||||
{
|
{
|
||||||
|
LOG(LINFO, ("Saving metalines to", GetFilename()));
|
||||||
|
|
||||||
std::unordered_multimap<size_t, std::shared_ptr<LineString>> keyToLineString;
|
std::unordered_multimap<size_t, std::shared_ptr<LineString>> keyToLineString;
|
||||||
FileReader reader(GetTmpFilename());
|
FileReader reader(GetTmpFilename());
|
||||||
ReaderSource<FileReader> src(reader);
|
ReaderSource<FileReader> src(reader);
|
||||||
@@ -223,8 +225,7 @@ void MetalinesBuilder::Save()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG_SHORT(LINFO, ("Wrote", countLines, "metalines [with", countWays, "ways] with OSM IDs for the entire planet to",
|
LOG(LINFO, ("Finished saving metalines. Wrote", countLines, "metalines [with", countWays, "ways]"));
|
||||||
GetFilename()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void MetalinesBuilder::OrderCollectedData()
|
void MetalinesBuilder::OrderCollectedData()
|
||||||
|
|||||||
@@ -1470,10 +1470,10 @@ void GetNameAndType(OsmElement * p, FeatureBuilderParams & params, TypesFilterFn
|
|||||||
|
|
||||||
size_t const typesCount = params.m_types.size();
|
size_t const typesCount = params.m_types.size();
|
||||||
if (params.FinishAddingTypesEx() == FeatureParams::TYPES_EXCEED_MAX)
|
if (params.FinishAddingTypesEx() == FeatureParams::TYPES_EXCEED_MAX)
|
||||||
LOG(LWARNING, ("Exceeded types count for:", DebugPrintID(*p), "Types:", typesCount, typesString));
|
LOG(LDEBUG, ("Exceeded types count for:", DebugPrintID(*p), "Types:", typesCount, typesString));
|
||||||
|
|
||||||
if (!params.house.IsEmpty() && !ftypes::IsAddressObjectChecker::Instance()(params.m_types))
|
if (!params.house.IsEmpty() && !ftypes::IsAddressObjectChecker::Instance()(params.m_types))
|
||||||
LOG(LWARNING, ("Have house number for _non-address_:", DebugPrintID(*p), "Types:", typesString));
|
LOG(LDEBUG, ("Have house number for _non-address_:", DebugPrintID(*p), "Types:", typesString));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Stage6: Collect additional information about feature such as
|
// Stage6: Collect additional information about feature such as
|
||||||
|
|||||||
@@ -265,6 +265,7 @@ bool RawGenerator::GenerateFilteredFeatures()
|
|||||||
while (!isEnd);
|
while (!isEnd);
|
||||||
|
|
||||||
LOG(LINFO, ("OSM source input was processed."));
|
LOG(LINFO, ("OSM source input was processed."));
|
||||||
|
LOG(LINFO, ("Finishing translators..."));
|
||||||
if (!translators.Finish())
|
if (!translators.Finish())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
|||||||
@@ -188,6 +188,7 @@ void RestrictionWriter::Finish()
|
|||||||
void RestrictionWriter::Save()
|
void RestrictionWriter::Save()
|
||||||
{
|
{
|
||||||
CHECK(!m_stream.is_open(), ("Finish() has not been called."));
|
CHECK(!m_stream.is_open(), ("Finish() has not been called."));
|
||||||
|
LOG(LINFO, ("Saving restriction values to", GetFilename()));
|
||||||
if (Platform::IsFileExistsByFullPath(GetTmpFilename()))
|
if (Platform::IsFileExistsByFullPath(GetTmpFilename()))
|
||||||
CHECK(base::CopyFileX(GetTmpFilename(), GetFilename()), ());
|
CHECK(base::CopyFileX(GetTmpFilename(), GetFilename()), ());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -453,7 +453,7 @@ void RoadAccessCollector::Save()
|
|||||||
{
|
{
|
||||||
// Dump only bicycle profile with the most wide barriers set to ignore.
|
// Dump only bicycle profile with the most wide barriers set to ignore.
|
||||||
if (p.m_vehicleType == VehicleType::Bicycle)
|
if (p.m_vehicleType == VehicleType::Bicycle)
|
||||||
LOG(LWARNING, ("Node barrier without access:", nodeID));
|
LOG(LDEBUG, ("Node barrier without access:", nodeID));
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -467,6 +467,8 @@ void RoadAccessCollector::Save()
|
|||||||
}, m_cache);
|
}, m_cache);
|
||||||
|
|
||||||
sizeWriter.Write(writer, count);
|
sizeWriter.Write(writer, count);
|
||||||
|
|
||||||
|
LOG(LINFO, ("Finished saving road access values"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void RoadAccessCollector::MergeInto(RoadAccessCollector & collector) const
|
void RoadAccessCollector::MergeInto(RoadAccessCollector & collector) const
|
||||||
|
|||||||
@@ -220,6 +220,8 @@ void RoadPenaltyCollector::Save()
|
|||||||
routing::Save(writer, entry.type);
|
routing::Save(writer, entry.type);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LOG(LINFO, ("Finished saving road penalty values"));
|
||||||
}
|
}
|
||||||
|
|
||||||
bool BuildRoadPenalty(string const & dataFilePath, string const & roadPenaltyPath,
|
bool BuildRoadPenalty(string const & dataFilePath, string const & roadPenaltyPath,
|
||||||
|
|||||||
@@ -62,9 +62,7 @@ void Translator::Emit(OsmElement const & src)
|
|||||||
|
|
||||||
void Translator::Finish()
|
void Translator::Finish()
|
||||||
{
|
{
|
||||||
LOG(LINFO, ("Finishing collectors..."));
|
|
||||||
m_collector->Finish();
|
m_collector->Finish();
|
||||||
LOG(LINFO, ("Finishing processors..."));
|
|
||||||
m_processor->Finish();
|
m_processor->Finish();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user